home *** CD-ROM | disk | FTP | other *** search
/ Shareware Super Platinum 8 / Shareware Super Platinum 8.iso / mac / PROGTOOL / DOCZ16.ZIP;1 / DOCZ.LIF / DOCZ16.DOC < prev    next >
Encoding:
Text File  |  1994-03-02  |  263.6 KB  |  8,977 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.                                       DOCZ(tm)
  21.  
  22.  
  23.                        An Automated Code Documentation System
  24.  
  25.                                      Version 1.6
  26.  
  27.  
  28.                                      User Manual
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.                                 Software Toolz, Inc.
  44.                                8030 Pooles Mill Drive
  45.                              Ball Ground, Georgia 30107
  46.                                    (404) 889-8264
  47.                                  FAX (404) 887-5960
  48.                          Internet: software@toolz.atl.ga.us
  49.  
  50.  
  51.  
  52.  
  53.  
  54.                  Special contributions and inspiration provided by:
  55.  
  56.                                     Roger D. Wood
  57.                                Loren L. Brumbaugh, Jr.
  58.                                       Chip Owen
  59.                                     Karl Klingman
  60.  
  61.  
  62.             The text permutation algorithm was developed and contributed
  63.                                to the DOCZ System by:
  64.  
  65.                                   Paul D. Anderson
  66.  
  67.  
  68.                     The DOCZ System was designed and written by:
  69.  
  70.                                     Todd Merriman
  71.  
  72.  
  73.                                      Trademarks:
  74.  
  75.                      DOCZ is a trademark of Software Toolz, Inc.
  76.                      MSDOS and XENIX are trademarks of Microsoft
  77.             IBM-PC, RS6000 and PCDOS are trademarks of The International
  78.                             Business Machines Corporation
  79.                 DEC, DEC/CMS, VAX, and VMS are trademarks of Digital
  80.                                 Equipment Corporation
  81.                       8086 is a trademark of Intel Corporation
  82.                              UNIX is a trademark of AT&T
  83.                        BRIEF is a trademark of UnderWare, Inc
  84.                    CTIX is a trademark of Convergent Technologies
  85.                    AViiON and DG/UX are trademarks of Data General
  86.                   SUN and SPARC are trademarks of Sun Microsystems
  87.                          Dbase is a trademark of Ashton-Tate
  88.                      SCO is a trademark of Santa Cruz Operation
  89.  
  90.  
  91.                       The installation program used to install
  92.                       the MSDOS  version of  the DOCZ  System,
  93.                       INSTALL, is  licensed software  provided
  94.                       by   Knowledge   Dynamics   Corporation,
  95.                       Highway Contract  4  Box  185-H,  Canyon
  96.                       Lake, Texas 78133-3508 (USA), 1-512-964-
  97.                       3994.  INSTALL is Copyright 1987-1989 by
  98.                       Knowledge  Dynamics  Corporation   which
  99.                       reserves all copyright protection world-
  100.                       wide.  INSTALL  is provided  to you  for
  101.                       the exclusive purpose of installing  the
  102.                       MSDOS version of the DOCZ System.
  103.  
  104.  
  105.                              User Manual Revision 33275
  106.                             DOCZ Version 1.6 User Manual
  107.  
  108.  
  109.  
  110.                                           2
  111.  
  112.  
  113.  
  114.  
  115.  
  116.                                        NOTICE
  117.  
  118.             Be informed that this manual and the associated computer
  119.             programs are protected by Public Laws 94-553 and 96-517 of
  120.             the 94th and 96th Congress.
  121.  
  122.             Any person who infringes a copyright for commercial
  123.             advantage or financial gain will be subject to federal
  124.             criminal prosecution.
  125.  
  126.  
  127.                                      DISCLAIMER
  128.  
  129.             This software is licensed (not sold).  It is licensed to
  130.             sublicensees, including end-users without express or implied
  131.             warranties of any kind.  Software Toolz, Inc. makes no
  132.             warranties with respect to this manual, or with respect to
  133.             the software described in this manual, its quality,
  134.             performance, merchantability, or fitness for any particular
  135.             purpose or noninfringement of patents, copyrights or other
  136.             proprietary rights of others.  Software Toolz software is
  137.             sold as is.  The entire risk as to its quality and
  138.             performance is with the buyer (and not Software Toolz, Inc.,
  139.             its distributor, or its retailer), and the buyer assumes the
  140.             entire cost of all necessary servicing, repair, or
  141.             correction and any incidental or consequential damages.  In
  142.             no event will Software Toolz, Inc. be liable for direct,
  143.             indirect, incidental, or consequential damages resulting
  144.             from any defect in the software, even if Software Toolz has
  145.             been advised of the possibility of such damages.  Some
  146.             states do not allow the exclusion or limitation of implied
  147.             warranties or liability for incidental or consequential
  148.             damages, so the above limitation or exclusion may not apply
  149.             to you.
  150.  
  151.             Further, Software Toolz, Inc. reserves the right to revise
  152.             this publication without obligation to notify any person of
  153.             such revisions.  Information in this publication does not
  154.             represent a commitment on the part of Software Toolz, Inc..
  155.  
  156.             Copyright 1986, Thomas C. (Todd) Merriman, d/b/a Future
  157.             Communications, Atlanta, Georgia
  158.             Copyright 1990, Software Toolz, Inc., Atlanta, Georgia
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.                                           3
  173.  
  174.  
  175.                                       CONTENTS
  176.  
  177.  
  178.                  Building a New DOCZ Documentation Library ...........9
  179.  
  180.             CONCEPTS .................................................11
  181.                  What is DOCZ? .......................................11
  182.                  What does DOCZ Do? ..................................12
  183.                  Major Functions .....................................12
  184.                  What is a Library? ..................................14
  185.                  What is a Module? ...................................14
  186.                  Directories .........................................15
  187.                  The DOCZ Programs ...................................17
  188.                  Command Line Arguments ..............................19
  189.                  Conventions Used in this Document ...................20
  190.                  Program Operation Conventions .......................21
  191.                  File Formats ........................................21
  192.                  Miscellaneous Conventions ...........................23
  193.                  Date Format .........................................23
  194.                  Naming Conventions ..................................25
  195.                  Architecture ........................................25
  196.  
  197.             FORMATTING SOURCE CODE ...................................27
  198.                  The Documentation Header ............................27
  199.                  The Parameters for Documentation Headers ............29
  200.                  Parameter Summary ...................................34
  201.                  Building Documentation Libraries ....................37
  202.                  Full Library Documentation ..........................41
  203.                  Printing ............................................42
  204.                  The Library Introduction ............................42
  205.                  Revision/Fix Notices ................................43
  206.                  Change Notices ......................................45
  207.                  Library Summary .....................................45
  208.                  Single Module Documentation .........................47
  209.                  The Configuration File ..............................49
  210.                  The Printer Interface ...............................49
  211.                  Multiple Language Support ...........................53
  212.                  Specifying a Comment String Mask ....................53
  213.                  Specifying Comment String Masks for File
  214.                  Extensions ..........................................54
  215.                  Transaction Logging .................................55
  216.                  Alternate Directories and Version Control ...........57
  217.                  MSDOS Username ......................................59
  218.                  Variable TAB Expansion ..............................59
  219.                  Specifying Command Line Options .....................60
  220.                  Option Summary ......................................61
  221.                  Dumping the Documentation Index .....................63
  222.                  Displaying Modules Modified Since a Date ............63
  223.                  Displaying Modules Introduced Since a Date ..........63
  224.                  Deleting a Module ...................................64
  225.                  Searching for a Module ..............................64
  226.                  Feeding the Documentation Index to Other Programs ...64
  227.                  Reorganizing Documentation Index Files ..............65
  228.                  DOC .................................................67
  229.                       DOC Examples ...................................68
  230.                  DOCXL ...............................................69
  231.                       DOCXL Examples .................................71
  232.  
  233.  
  234.                                           5
  235.  
  236.  
  237.                                       CONTENTS
  238.  
  239.  
  240.                  DOCXLU ..............................................72
  241.                       DOCXLU Examples ................................76
  242.                  DOCHBLD .............................................77
  243.                  DOCHELP .............................................79
  244.                  DOCXLED .............................................81
  245.                  DOCGET ..............................................85
  246.                  DOCLIS ..............................................86
  247.                  DOCLOG ..............................................88
  248.                  DOCMAN ..............................................90
  249.                  DOCLEARN ............................................91
  250.                  PSET ................................................93
  251.                  PCODE ...............................................97
  252.                  CALCDATE ............................................99
  253.                  REFORMAT ............................................100
  254.                  FILLS ...............................................102
  255.                  DETAB ...............................................103
  256.                  RETAB ...............................................104
  257.  
  258.             ERROR MESSAGES ...........................................105
  259.                  Directory Layout ....................................117
  260.                  Cross-Platform Development ..........................118
  261.                  Using DOCZ WIthout Source Code ......................122
  262.                  Building a Documentation Library ....................127
  263.                  strmcpy.c - C Language ..............................128
  264.                  strmcpy.asm - 8086 Assembly .........................128
  265.                  strmcpy.mar - VAX11 Assembly ........................128
  266.                  move.bat - MSDOS Batch File .........................128
  267.                  fake.bas - BASIC Function ...........................128
  268.                  upcase.for - FORTRAN Function .......................128
  269.                  cmdline.pas - Pascal Function .......................128
  270.                  mailfile.com - DCL Command File .....................128
  271.                  cp_r.sh - Bourne Shell Script .......................128
  272.                  macro.h - C Language Macro ..........................128
  273.                  gtsa.prg - Dbase Language ...........................128
  274.                  frank.prl - Perl Language ...........................129
  275.                  DOCREVS.COM - DOCZ Automation .......................129
  276.                  docrevs.sh - DOCZ Automation ........................129
  277.                  DOCSTASH.COM - DOCZ Automation ......................129
  278.                  docstash - DOCZ Automation ..........................129
  279.                  A Sample DOCZ Library ...............................130
  280.                  Documentation Index Record Format ...................131
  281.                  Development Language ................................131
  282.                  Version Control Software Interface ..................132
  283.                  Standard Error ......................................132
  284.                  8.5 x 11 Documentation Size .........................132
  285.                  Case in Module and Library Names ....................132
  286.                  Some Implementation Requirements ....................133
  287.                  Basic Installation ..................................141
  288.                  Re-installation/Update ..............................141
  289.                  Enabling Extended DOCZ Features .....................142
  290.                       Examples and Support Files .....................143
  291.                  MSDOS VERSION .......................................144
  292.                       MSDOS Version Minimum Requirements .............144
  293.                       Getting Started with the MSDOS Version .........144
  294.  
  295.  
  296.                                           6
  297.  
  298.  
  299.                                       CONTENTS
  300.  
  301.  
  302.                       MSDOS Version Installation Procedure ...........144
  303.                       Files in a Working DOCZ System .................145
  304.                  VMS VERSION .........................................147
  305.                       VMS Version Minimum Requirements ...............147
  306.                       Getting Started with the VMS Version ...........147
  307.                       VMS Version Installation Procedure .............147
  308.                       Files in a Working DOCZ System .................149
  309.                  UNIX VERSION ........................................151
  310.                       UNIX Version Minimum Requirements ..............151
  311.                       Getting Started with the UNIX Version ..........151
  312.                       UNIX Version Installation Procedure ............151
  313.                       Files in a Working DOCZ System .................153
  314.  
  315.                   ................................            INDEX                                 ....................155
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324.  
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.  
  338.  
  339.  
  340.  
  341.  
  342.  
  343.  
  344.  
  345.  
  346.  
  347.  
  348.  
  349.  
  350.  
  351.  
  352.  
  353.  
  354.  
  355.  
  356.  
  357.  
  358.                                           7
  359.  
  360.  
  361.                               Getting Started Quickly!
  362.  
  363.  
  364.             Building a New DOCZ Documentation Library
  365.  
  366.  
  367.             (1)  The installation procedure will have created a command
  368.                  file in the DOCREF directory called:
  369.  
  370.                       Unix:          $DOCREF/docz_sym
  371.  
  372.                       MSDOS:    %DOCREF%/DOCZ_SYM.BAT
  373.  
  374.                       VMS:      SYS$MANAGER:DOCZ_LOGIN.COM
  375.  
  376.                  This command file will create the required DOCSRC and
  377.                  DOCREF environment symbols for use by DOCZ.  If you
  378.                  have not already, run this command file so that DOCZ
  379.                  programs will be able to find the files in the DOCSRC
  380.                  and DOCREF directories (the Unix command file should be
  381.                  dot executed).  The MSDOS installation procedure
  382.                  optionally modifies AUTOEXEC.BAT to define the required
  383.                  symbols.
  384.  
  385.                  Select a name for your library.  The name may have, but            (2)
  386.                  does not need to have a physical relationship to any
  387.                  object library or group of programs.  The name should
  388.                  be up to 11 characters in length, and should contain no
  389.                  punctuation.
  390.  
  391.                  Create a sub-directory to the DOCSRC directory (DOCSRC            (3)
  392.                  was created during installation), with a name the same
  393.                  as the name you have chosen for your library (upper
  394.                  case in Unix).
  395.  
  396.             (4)  Select the modules to be contained in the documentation
  397.                  library.  Modules are either subroutine names (when
  398.                  documenting object libraries) or program names (when
  399.                  documenting program or command file libraries).  They
  400.                  may also be object names when using an object-oriented
  401.                  language.
  402.  
  403.                  Edit the Documentation Header in your source code for            (5)
  404.                  each module you want to document.  Each source file may
  405.                  contain one or many modules, and there will be one DOCZ
  406.                  Documentation Header for each module in a source file.
  407.  
  408.             (6)  Move the source files to your new DOCSRC subdirectory.
  409.  
  410.             (7)  Run DOCXL or DOCLIS to add the module to the
  411.                  Documentation Index (see the DOCXL or DOCLIS program
  412.                  reference).  DOCLIS will "mass-load" the documentation
  413.                  library with one invocation.  DOCXL will add each
  414.                  module one at a time.
  415.  
  416.                  Run DOC on the library to test the documentation (see            (8)
  417.                  the DOC program reference).
  418.  
  419.  
  420.                                           9
  421.  
  422.  
  423.                               Getting Started Quickly!
  424.  
  425.  
  426.  
  427.             (9)  Run DOCHBLD to build an on-line help library (see the
  428.                  DOCHBLD program reference).
  429.  
  430.             (10) Use the manual section, "SELECTING OPTIONS" to enhance
  431.                  and modify your DOCZ environment.  If you are adapting
  432.                  DOCZ to a pre-existing development environment, this
  433.                  manual section will show you how to override the
  434.                  installation defaults used by DOCZ and set up an
  435.                  environment more suitable to your current environment.
  436.                  For instance, your source code does not necessarily
  437.                  have to be stored in a sub-directory with a name the
  438.                  same as the documentation library name.
  439.  
  440.                  Use the manual section, "PUBLISHING DOCUMENTATION" to            (11)
  441.                  learn how to automate Revision Notices and publish
  442.                  other types of DOCZ reports.
  443.  
  444.             The source files for many examples in various languages were
  445.             deposited in the DOCSRC directory by the installation
  446.             procedure.  In addition, the sample documentation library
  447.             called CSUB may have been built from sample sources at DOCZ
  448.             installation time, if that option was selected by the
  449.             installer.  The bldocz command file has been provided in the
  450.             DOCSRC directory to demonstrate how CSUB was built.
  451.  
  452.  
  453.  
  454.  
  455.  
  456.  
  457.  
  458.  
  459.  
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.  
  467.  
  468.  
  469.  
  470.  
  471.  
  472.  
  473.  
  474.  
  475.  
  476.  
  477.  
  478.  
  479.  
  480.  
  481.  
  482.                                          10
  483.  
  484.  
  485.                                       CONCEPTS
  486.  
  487.  
  488.             What is DOCZ?
  489.  
  490.             Have you ever wished that you could fully document
  491.             subroutine libraries and programs such that they could be
  492.             used by everyone in your software development environment?
  493.             DOCZ is a software tool that automates that kind of code
  494.             documentation.
  495.  
  496.             Software developers know that a high degree of efficiency is
  497.             required in today's software market to compete, and one
  498.             means of achieving high efficiency is by reusing code.  The
  499.             DOCZ System provides the means to document code to make it
  500.             easy to reuse by many in a development environment.
  501.  
  502.             The concept is simple:  the code documentation is contained
  503.             in the source code itself.  The documentation is completed
  504.             by the software developer whenever a new module is
  505.             introduced.
  506.  
  507.             A good development environment is one that facilitates the
  508.             sharing of resources between software developers.  The DOCZ
  509.             System automates the entire process of managing the
  510.             documentation for shareable code.
  511.  
  512.             DOCZ consists of a group programs that extracts code
  513.             documentation from the source code and composes it into
  514.             print image.
  515.  
  516.  
  517.  
  518.  
  519.  
  520.  
  521.  
  522.  
  523.  
  524.  
  525.  
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.  
  533.  
  534.  
  535.  
  536.  
  537.  
  538.  
  539.  
  540.  
  541.  
  542.  
  543.  
  544.                                          11
  545.  
  546.  
  547.                                       CONCEPTS
  548.  
  549.  
  550.             What does DOCZ Do?
  551.  
  552.                  S    Allows documentation and source code to be
  553.                       contained in a single file
  554.  
  555.                  S    Supplies the mechanism for providing documentation
  556.                       of code to be used by other software developers
  557.  
  558.                  S    Works with 'C', Assembly, Pascal, COBOL, FORTRAN,
  559.                       BASIC and command-language-interpreter languages.
  560.                       Theoretically, DOCZ may be used with any language
  561.                       for which the source is stored in text
  562.  
  563.                  S    Allows a complete documentation set to be produced
  564.                       immediately on demand, and the documentation
  565.                       includes an index and quick-reference, as well as
  566.                       detailed module documentation
  567.  
  568.                  S    Uses printer features to enhance output format of
  569.                       the documentation
  570.  
  571.                  S    Makes the sharing of resources in large
  572.                       development groups much easier
  573.  
  574.                  S    Takes the drudgery out of code documentation and
  575.                       makes it easy for the programmer to produce
  576.                       polished documentation
  577.  
  578.                  S    Simplifies the publishing of revision, change,
  579.                       introduction and fix notices
  580.  
  581.                  S    Provides on-line documentation for library modules
  582.                       and prototypes for selected editors
  583.  
  584.                  S    Automatically retrieves source files via source
  585.                       code version control systems (SCCS under UNIX, and
  586.                           under VMS)                      CMS
  587.  
  588.                  S    Provides for a cross-platform development
  589.                       environment and identical functionality with Unix
  590.                       System V, VMS, and MSDOS (including PC-networks)
  591.  
  592.  
  593.             Major Functions
  594.  
  595.                  S    Adding or updating a module
  596.  
  597.                  S    Producing the library documentation
  598.  
  599.                  S    Producing revision or fix notices
  600.  
  601.                  S    Producing documentation for recently changed
  602.  
  603.                       modules
  604.  
  605.  
  606.                                          12
  607.  
  608.  
  609.                                       CONCEPTS
  610.  
  611.  
  612.  
  613.                  S    Maintaining the Documentation Index
  614.  
  615.                  S    Building and using on-line help libraries
  616.  
  617.  
  618.  
  619.  
  620.  
  621.  
  622.  
  623.  
  624.  
  625.  
  626.  
  627.  
  628.  
  629.  
  630.  
  631.  
  632.  
  633.  
  634.  
  635.  
  636.  
  637.  
  638.  
  639.  
  640.  
  641.  
  642.  
  643.  
  644.  
  645.  
  646.  
  647.  
  648.  
  649.  
  650.  
  651.  
  652.  
  653.  
  654.  
  655.  
  656.  
  657.  
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.  
  665.  
  666.  
  667.  
  668.                                          13
  669.  
  670.  
  671.                                       CONCEPTS
  672.  
  673.  
  674.             What is a Library?
  675.  
  676.  
  677.             A DOCZ "library" is a name.  The name may have, but does not
  678.             need to have a physical relationship to any object library
  679.             or group of programs.  It designates a logical "group" of
  680.             modules.  You may have one or many Documentation Libraries.
  681.  
  682.             The name may be up to 11 characters in length, and should
  683.             contain no punctuation.
  684.  
  685.  
  686.  
  687.             What is a Module?
  688.  
  689.  
  690.             A DOCZ "module" is a name.  Modules are either subroutine
  691.             names (when documenting object libraries) or program names
  692.             (when documenting program or command file libraries).  They
  693.             may also be object names when using an object-oriented
  694.             language.
  695.  
  696.             The name may be up to 31 characters in length, and naming
  697.             should follow standard file and/or object module entry point
  698.             naming conventions.
  699.  
  700.  
  701.  
  702.  
  703.  
  704.  
  705.  
  706.  
  707.  
  708.  
  709.  
  710.  
  711.  
  712.  
  713.  
  714.  
  715.  
  716.  
  717.  
  718.  
  719.  
  720.  
  721.  
  722.  
  723.  
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730.                                          14
  731.  
  732.  
  733.                                       CONCEPTS
  734.  
  735.  
  736.             Directories
  737.  
  738.             DOCZ documentation may refer to five directories on your
  739.             system:
  740.  
  741.                  (1)  The Default Source Directory - DOCSRC
  742.  
  743.                       Although source may be stored in any device or
  744.                       directory, the simplest approach is to use the
  745.                       default source directory (also known as the
  746.                       Documentation Source Directory).  When no
  747.                       directory or device is specified in the
  748.                       Documentation Index, the DOC program will search
  749.                       for files in a subdirectory of the default source
  750.                       directory.  In a large DOCZ installation, there
  751.                       could be many of these sub-directories.
  752.  
  753.                  (2)  The Documentation Reference Directory - DOCREF
  754.  
  755.                       This directory is where DOCZ programs will search
  756.                       for the Documentation Index File, library
  757.                       documentation "introductions," and other DOCZ
  758.                       system reference files.  See the installation
  759.                       documentation for more information.
  760.  
  761.                  (3)  The Documentation Data Directory - DOCDAT (VMS)
  762.  
  763.                       This directory is used for certain reference data
  764.                       files used in DOCZ.  In the MSDOS and UNIX
  765.                       versions, the "PATH" is searched for these files;
  766.                       consequently the Documentation Data Directory may
  767.                       be several physical directories.  In the VMS
  768.                       version a directory must be set aside where these
  769.                       files can be located when any of the DOCZ programs
  770.                       run.  There is only one of these directories on
  771.                       any VMS system, and it is pointed to by the DOCDAT
  772.                       logical name.
  773.  
  774.                  (4)  The Program Directory
  775.  
  776.                       The directory where DOCZ executable images reside
  777.                       when you are using DOCZ.  In the MSDOS and UNIX
  778.                       versions, the "PATH" is searched for these files.
  779.                       In the VMS version, the DOCZ programs are defined
  780.                       as DCL foreign commands, and their symbols point
  781.                       to the location of the executable image.
  782.  
  783.                  (5)  The Working Directory
  784.  
  785.                       The default directory when you run any of DOCZ
  786.                       programs.
  787.  
  788.  
  789.  
  790.  
  791.  
  792.                                          15
  793.  
  794.  
  795.                                       CONCEPTS
  796.  
  797.  
  798.             Ideally, these five logical directories do not exist as the
  799.             same single physical directory, although this is not
  800.             generally prohibited by the DOCZ System (see INSTALLATION
  801.             for more information).
  802.  
  803.  
  804.  
  805.  
  806.  
  807.  
  808.  
  809.  
  810.  
  811.  
  812.  
  813.  
  814.  
  815.  
  816.  
  817.  
  818.  
  819.  
  820.  
  821.  
  822.  
  823.  
  824.  
  825.  
  826.  
  827.  
  828.  
  829.  
  830.  
  831.  
  832.  
  833.  
  834.  
  835.  
  836.  
  837.  
  838.  
  839.  
  840.  
  841.  
  842.  
  843.  
  844.  
  845.  
  846.  
  847.  
  848.  
  849.  
  850.  
  851.  
  852.  
  853.  
  854.                                          16
  855.  
  856.  
  857.                                       CONCEPTS
  858.  
  859.  
  860.             The DOCZ Programs
  861.  
  862.  
  863.                  DOC       Generate module documentation
  864.  
  865.                  DOCXL     Add/update the Documentation Index
  866.  
  867.                  DOCXLU    Search and manage the Documentation Index
  868.  
  869.                  DOCHBLD   Generate an on-line library documentation
  870.  
  871.                  help file
  872.  
  873.                  DOCHELP   Scan/display on-line help documentation
  874.  
  875.                  DOCXLED   Examine/search/modify the Documentation Index
  876.  
  877.                  File
  878.  
  879.                  DOCGET    Extract a field from a documentation header
  880.  
  881.                  DOCLIS    Find all DOCZ modules in a source file
  882.  
  883.                  DOCLOG    Examine/search the log file
  884.  
  885.                  DOCMAN    On-line DOCZ User Manual
  886.  
  887.                  DOCLEARN  On-line DOCZ tutorial
  888.  
  889.  
  890.  
  891.  
  892.  
  893.  
  894.  
  895.  
  896.  
  897.  
  898.  
  899.  
  900.  
  901.  
  902.  
  903.  
  904.  
  905.  
  906.  
  907.  
  908.  
  909.  
  910.  
  911.  
  912.  
  913.  
  914.  
  915.  
  916.                                          17
  917.  
  918.  
  919.                                      CONVENTIONS
  920.  
  921.  
  922.             Command Line Arguments
  923.  
  924.                  S    Whenever you see the angle bracket symbols (< and
  925.                       >) in a command line specification, they denote a
  926.                       required argument.
  927.  
  928.                  S    Whenever you see the square bracket symbols ([ and
  929.                       ]) in a command line specification, they denote an
  930.                       optional argument.
  931.  
  932.                  S    Command line prompts (d> for MSDOS and $ for VMS
  933.                       and UNIX) are not displayed in this documentation.
  934.                       Only the command line arguments typed by the user
  935.                       are displayed, to avoid confusion.
  936.  
  937.                  S    Generally, in all DOCZ programs, if no command
  938.                       line arguments are specified when the program is
  939.                       run, then a list of possible command line
  940.                       arguments is displayed as a reminder to the user.
  941.  
  942.                  S    The "switch character," the character recognized
  943.                       as a delimiter for command line options, is (by
  944.                       default) the slash ('/') character in MSDOS and
  945.                       VMS versions, and is the dash ('-') character in
  946.                       the UNIX version.  This is consistent with the
  947.                       respective operating system conventions, but may
  948.                       be changed to any other character (such as '+') by
  949.                       defining the SWITCHAR symbol in the UNIX and MSDOS
  950.                       versions or the SWITCHAR logical name in the VMS
  951.                       version.  This document will display command-line
  952.                       options with the '/' delimiter.  Modifiers for
  953.                       command options are usually separated from the
  954.                       option specifier with an equals (=) sign.
  955.  
  956.                  S    Some DOCZ programs accept "ambiguous file names"
  957.                       (DOCLIS, for example).  If a file specification is
  958.                       illustrated as "a.f.n.," the specification may be
  959.                       an "ambiguous file name."  This means that the
  960.                       file specification may contain wildcard characters
  961.                       for multiple matches to file names.  Wildcarding
  962.                       in DOCZ programs will conform to the operating
  963.                       system conventions ('%' and '*' in VMS, '?' and
  964.                       '*' in UNIX and MSDOS).  DOCZ wildcards also
  965.                       provide the additional capability of specifying
  966.                       multiple paths in the ambiguous file name, as long
  967.                       as all specifications are contained in quotes so
  968.                       that they may be presented as a single argument to
  969.                       DOCZ programs.  For example:
  970.  
  971.                            "\DOCSRC\ULIB\*.pas \DOCSRC\UTIL\*.c"
  972.  
  973.  
  974.  
  975.  
  976.  
  977.  
  978.                                          19
  979.  
  980.  
  981.                                      CONVENTIONS
  982.  
  983.  
  984.             Conventions Used in this Document
  985.  
  986.                  S    Program names are always illustrated in upper case
  987.                       but, in the UNIX version, are named in lower case.
  988.  
  989.                  S    Batch files (MSDOS), shell scripts (UNIX), and
  990.                       command files (VMS) are all referred to as
  991.                       "command files."
  992.  
  993.  
  994.  
  995.  
  996.  
  997.  
  998.  
  999.  
  1000.  
  1001.  
  1002.  
  1003.  
  1004.  
  1005.  
  1006.  
  1007.  
  1008.  
  1009.  
  1010.  
  1011.  
  1012.  
  1013.  
  1014.  
  1015.  
  1016.  
  1017.  
  1018.  
  1019.  
  1020.  
  1021.  
  1022.  
  1023.  
  1024.  
  1025.  
  1026.  
  1027.  
  1028.  
  1029.  
  1030.  
  1031.  
  1032.  
  1033.  
  1034.  
  1035.  
  1036.  
  1037.  
  1038.  
  1039.  
  1040.                                          20
  1041.  
  1042.  
  1043.                                      CONVENTIONS
  1044.  
  1045.  
  1046.             Program Operation Conventions
  1047.  
  1048.                  S    In UNIX DOCZ, program names are always in lower ,
  1049.                       while data and reference files are always in upper
  1050.                       case.
  1051.  
  1052.                  S    All Software Toolz programs display a minor
  1053.                       revision number that will be greater than 31000.
  1054.                       This number is a Julian equivalent of the date on
  1055.                       which the program was created.  This is provided
  1056.                       to determine exactly which version of a program is
  1057.                       being run.  The actual date on the file in the
  1058.                       directory is meaningless.
  1059.  
  1060.                  S    DOCZ programs are not generally interactive, i.e.
  1061.                       there is no prompt/response type operations.  This
  1062.                       convention is adopted to allow the user to more
  1063.                       fully automate their documentation through the use
  1064.                       of command files that can pass arguments to DOCZ
  1065.                       programs.
  1066.  
  1067.                  S    DOCZ programs may return a value to the command-
  1068.                       language interpreter that may be  significant.
  1069.                       For those DOCZ programs that do return a value,
  1070.                       the actual value is operating system dependent:
  1071.  
  1072.                  REFERENCE NAME      UNIX/MSDOS VALUE         VMS VALUE
  1073.  
  1074.                  EXITNORMAL               0                   1
  1075.                  EXITWARN                 1                   3
  1076.                  EXITBAD                  255                 4
  1077.  
  1078.             For example:  the DOCZ documentation specifies that the DOC
  1079.             program returns EXITBAD if it cannot open the Documentation
  1080.             Index File.  For VMS, this means that $STATUS will be set to
  1081.             the value, 4.  For MSDOS, this means that ERRORLEVEL will be
  1082.             set to 255.  For UNIX, this means that $? will be set to
  1083.             255.  This will allow you to include references to DOCZ
  1084.             programs in command files, and command file program flow can
  1085.             be determined by the results of programs.
  1086.  
  1087.  
  1088.  
  1089.             File Formats
  1090.  
  1091.  
  1092.             A commonly used file format in DOCZ is the text data format.
  1093.             It is a text file format containing variable length records
  1094.             composed of variable length fields delimited with a comma.
  1095.             Records are delimited with an End-of-Line (which varies
  1096.             between operating systems).  Fields that require the
  1097.             embedding of commas may be surrounded by either the double
  1098.             quote character or the apostrophe.  If the double-quote must
  1099.             be embedded in the field, the apostrophe is used to surround
  1100.  
  1101.  
  1102.                                          21
  1103.  
  1104.  
  1105.                                      CONVENTIONS
  1106.  
  1107.  
  1108.             the field.  If the apostrophe must be embedded in the field,
  1109.             the double-quote is used to surround the field.  This file
  1110.             format has the advantages that it can be edited with a text
  1111.             editor, though it is not "print image."  Record size is
  1112.             generally never fixed, and records are only as large as
  1113.             required.  Most operating system sort utilities are made to
  1114.             operate on this type of file.  The DOCXL program outputs
  1115.             this format for one of the reports it produces; ASCII
  1116.             Transport Files use this file format.
  1117.  
  1118.  
  1119.  
  1120.  
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  
  1126.  
  1127.  
  1128.  
  1129.  
  1130.  
  1131.  
  1132.  
  1133.  
  1134.  
  1135.  
  1136.  
  1137.  
  1138.  
  1139.  
  1140.  
  1141.  
  1142.  
  1143.  
  1144.  
  1145.  
  1146.  
  1147.  
  1148.  
  1149.  
  1150.  
  1151.  
  1152.  
  1153.  
  1154.  
  1155.  
  1156.  
  1157.  
  1158.  
  1159.  
  1160.  
  1161.  
  1162.  
  1163.  
  1164.                                          22
  1165.  
  1166.  
  1167.                                      CONVENTIONS
  1168.  
  1169.  
  1170.             Miscellaneous Conventions
  1171.  
  1172.             Control keys are sometimes utilized in interactive DOCZ
  1173.             programs.  Whenever a prompt or legend is displayed for
  1174.             control keys the carat character will precede the key to
  1175.             denote that it is to be entered as a control character.  For
  1176.             example:
  1177.  
  1178.                  ^C
  1179.  
  1180.             actually represents a control-C.  The carat character is not
  1181.             used for input in any DOCZ program.
  1182.  
  1183.             The "Press" prompt denotes that only a single keystroke is
  1184.             required for input.  The "Enter" prompt denotes that one or
  1185.             more keystrokes followed by a [RETURN] is required for
  1186.             input.
  1187.  
  1188.  
  1189.  
  1190.             Date Format
  1191.  
  1192.             Dates specified to DOCZ programs have a format that is
  1193.             specified by the user.  The default date format is:
  1194.  
  1195.                  MM/DD/YY
  1196.  
  1197.             which is the most common U.S. format.  Leading zeroes are
  1198.             not required when the date is input but will be supplied
  1199.             when the date is displayed.
  1200.  
  1201.             Other formats for the date may be specified via an
  1202.             environment variable (or logical name in the VMS version),
  1203.             DATEFMT.  If this variable is present when any of the DOCZ
  1204.             programs is run, it will be used to define the format of the
  1205.             date.  The date format is specified using a string
  1206.             containing one or more of the characters, D, M, N, and/or Y,
  1207.             where:
  1208.  
  1209.                  D represents the day number
  1210.  
  1211.                  M represents the month number
  1212.  
  1213.                  N represents the month name
  1214.  
  1215.                  Y represents the year number
  1216.  
  1217.  
  1218.  
  1219.  
  1220.  
  1221.  
  1222.  
  1223.  
  1224.  
  1225.  
  1226.                                          23
  1227.  
  1228.  
  1229.                                      CONVENTIONS
  1230.  
  1231.  
  1232.             A date specification always has three fields:  month, day,
  1233.             and year.  The separator character specified in the date
  1234.             format will be used whenever the date is input or displayed:
  1235.             commonly used are '/' or '-', but any non-alphanumeric
  1236.             character may be used.  For D and M, specifying two
  1237.             characters means that leading zeroes will be used.  For Y,
  1238.             specifying YYYY means that the century will be used, as well
  1239.             as the year number; specifying YY means that only the year
  1240.             number will be used.  When NNN is used to specify the month
  1241.             (instead of M or MM), the abbreviation for the month will be
  1242.             used (i.e. "JAN," "FEB," etc.).  Case is ignored in date
  1243.             format specifiers.  For example, the date format specifier
  1244.             may typically have (but is not limited to) the following
  1245.             formats:
  1246.  
  1247.                  D-NNN-YYYY          1-MAY-1987
  1248.                  MM/DD/YY            05/01/87
  1249.                  DD/MM/YY            01/05/87
  1250.                  M/D/Y               1/5/87
  1251.                  MM-DD-YY            05-01-87
  1252.                  D-M-Y               1-5-87
  1253.                  MM/DD/YYYY          05/01/1987
  1254.  
  1255.             When a date is to be specified to a program, the month, day,
  1256.             and year must all be specified.  Many DOCZ programs allow
  1257.             defaulting to the current date (see the documentation for
  1258.             the individual programs).
  1259.  
  1260.             The following examples illustrate the definition of the date
  1261.             format:
  1262.  
  1263.                  VMS
  1264.  
  1265.                       $  DEFINE/PROCESS DATEFMT D-NNN-YYYY
  1266.  
  1267.                  MSDOS
  1268.  
  1269.                       SET DATEFMT=D-NNN-YYYY
  1270.  
  1271.                  UNIX
  1272.  
  1273.                       DATEFMT=D-NNN-YYYY
  1274.                       export DATEFMT
  1275.  
  1276.             Note that once the date format is specified on your system,
  1277.             it cannot be easily changed due to the fact that revision
  1278.             and fix dates are imbedded in the source files in the
  1279.             required format.
  1280.  
  1281.  
  1282.  
  1283.  
  1284.  
  1285.  
  1286.  
  1287.  
  1288.                                          24
  1289.  
  1290.  
  1291.                                      CONVENTIONS
  1292.  
  1293.  
  1294.             Naming Conventions
  1295.  
  1296.                  S    Program and function documentation is grouped in
  1297.                       logical "libraries."  These libraries are named
  1298.                       and may correspond to names of function libraries
  1299.                       on the system.
  1300.  
  1301.                  S    The maximum length of a library name is eleven
  1302.                       characters, and it is mapped to upper case.
  1303.  
  1304.                  S    Module names are restricted to thirty-one
  1305.                       characters, and they are mapped to upper case.
  1306.  
  1307.                  S    The maximum length of a file specification
  1308.                       (including the directory path) is:
  1309.  
  1310.                            MSDOS:    87 characters
  1311.                            VMS:      127 characters
  1312.                            UNIX:     127 characters
  1313.  
  1314.                       Case is preserved in path and file names (although
  1315.                       it is ignored by MSDOS and VMS).
  1316.  
  1317.                  S    Limits are set on name lengths to minimize the
  1318.                       size of the Documentation Index File.
  1319.  
  1320.  
  1321.             Architecture
  1322.  
  1323.  
  1324.             DOCZ maintains a Documentation Index File containing an
  1325.             entry for each module documented with the DOCZ System.  It
  1326.             is a reference file maintained independently from any source
  1327.             code, and it contains the following information for each
  1328.             module in the DOCZ System:
  1329.  
  1330.                  (1)  Library name
  1331.  
  1332.                  (2)  Module name
  1333.  
  1334.                  (3)  Source file name
  1335.  
  1336.  
  1337.  
  1338.  
  1339.  
  1340.  
  1341.  
  1342.  
  1343.  
  1344.  
  1345.  
  1346.  
  1347.  
  1348.  
  1349.  
  1350.                                          25
  1351.  
  1352.  
  1353.                                      CONVENTIONS
  1354.  
  1355.  
  1356.             The "libraries" may contain programs, command files, or
  1357.             functions (referred to as "modules" in this manual).  The
  1358.             source files may contain a program, a function, or many
  1359.             functions.  Even macros that are usually contained in
  1360.             include files may be documented by DOCZ.  Each module
  1361.             contained in a file must have a documentation header, which
  1362.             contains documentation components, delimited by
  1363.             "parameters," that will be extracted by the DOCZ programs.
  1364.  
  1365.             There is no limit on the number of library names used.
  1366.  
  1367.             There is one record per module in the Documentation Index
  1368.             File, and records may be marked for deletion to be reclaimed
  1369.             on the next add.
  1370.  
  1371.             There may be one or more modules in each source file.
  1372.  
  1373.             The (optional) Configuration File is used by all of the DOCZ
  1374.             programs to select options.  See the section on "SELECTING
  1375.             OPTIONS."
  1376.  
  1377.  
  1378.  
  1379.  
  1380.  
  1381.  
  1382.  
  1383.  
  1384.  
  1385.  
  1386.  
  1387.  
  1388.  
  1389.  
  1390.  
  1391.  
  1392.  
  1393.  
  1394.  
  1395.  
  1396.  
  1397.  
  1398.  
  1399.  
  1400.  
  1401.  
  1402.  
  1403.  
  1404.  
  1405.  
  1406.  
  1407.  
  1408.  
  1409.  
  1410.  
  1411.  
  1412.                                          26
  1413.  
  1414.  
  1415.                                FORMATTING SOURCE CODE
  1416.  
  1417.  
  1418.             The Documentation Header
  1419.  
  1420.  
  1421.             The Documentation Header has the general form:
  1422.  
  1423.                  .<parameter>
  1424.  
  1425.                  <arguments>
  1426.  
  1427.             This is a list of currently implemented parameters:
  1428.  
  1429.                  .MODULE
  1430.                  .LIBRARY
  1431.                  .TYPE
  1432.                  .DESCRIPTION
  1433.                  .ARGUMENTS
  1434.                  .NARRATIVE
  1435.                  .APPLICATION
  1436.                  .SYSTEM
  1437.                  .AUTHOR
  1438.                  .REVISION
  1439.                  .FIXES
  1440.                  .CAUTION
  1441.                  .OVERHEAD
  1442.                  .COMMENTS
  1443.                  .RETURNS
  1444.                  .LANGUAGE
  1445.                  .EXAMPLE
  1446.                  .SEE_ALSO
  1447.                  .INCLUDES
  1448.                  .NOTICE
  1449.                  .LSE
  1450.                  .REFERENCES
  1451.                  .CONVENTIONS
  1452.                  .PAGE
  1453.                  .ERRORS
  1454.                  .ENDOC
  1455.  
  1456.             Each of the elements in the documentation header is a
  1457.             parameter that has arguments (although no arguments are
  1458.             shown in the above outline).  DOCZ programs scan this header
  1459.             and extract the arguments associated with the parameters,
  1460.             and reformat the arguments into a usable format.  Some
  1461.             parameters are required, and others are optional.  Some may
  1462.             appear only once, and others may occur many times.  The
  1463.             documentation parameters are unique identifiers delimited
  1464.             with a period in the first column on the page (except when
  1465.             using a "comment string mask" with languages that require
  1466.             such).  Only the first three characters of the parameters
  1467.             are scanned, but you should include the entire word for
  1468.             clarity.
  1469.  
  1470.  
  1471.  
  1472.  
  1473.  
  1474.                                          27
  1475.  
  1476.  
  1477.                                FORMATTING SOURCE CODE
  1478.  
  1479.  
  1480.             Documentation text may appear on the same line as, or any
  1481.             line following the parameters, except for .MODULE and
  1482.             .LIBRARY names and the .REVISION or .FIXES date:  in these
  1483.             four cases, the arguments must occur on the same line.  Case
  1484.             is ignored in module name, library name, type description,
  1485.             application keyword, and operating system.  For clarity, the
  1486.             text of your arguments to the parameters should be indented
  1487.             as the text will not be reformatted for the documentation.
  1488.             TAB characters may be used for indention, and they will be
  1489.             expanded to eight spaces by the DOCZ programs.  Multiple
  1490.             modules may be contained in one source file, and each will
  1491.             have a documentation heading.  Do not specify a delimiter
  1492.             without an argument (except for .ENDOC).  The only
  1493.             parameters that are position dependent are .MODULE (starts
  1494.             the header) and .ENDOC (ends the header).
  1495.  
  1496.             Any code outside the documentation header is completely
  1497.             ignored by the DOCZ programs.
  1498.  
  1499.             Validation of required fields is done by the DOC program
  1500.             when it is generating output documentation.
  1501.  
  1502.             The Source Code Examples section of this manual displays a
  1503.             few documentation headers for some popular languages.
  1504.  
  1505.             A description of all documentation parameters and their
  1506.             options is described in "The Parameters for Documentation
  1507.             Headers."
  1508.  
  1509.  
  1510.  
  1511.  
  1512.  
  1513.  
  1514.  
  1515.  
  1516.  
  1517.  
  1518.  
  1519.  
  1520.  
  1521.  
  1522.  
  1523.  
  1524.  
  1525.  
  1526.  
  1527.  
  1528.  
  1529.  
  1530.  
  1531.  
  1532.  
  1533.  
  1534.  
  1535.  
  1536.                                          28
  1537.  
  1538.  
  1539.                                FORMATTING SOURCE CODE
  1540.  
  1541.  
  1542.             The Parameters for Documentation Headers
  1543.  
  1544.  
  1545.             As illustrated in the following descriptions of parameter
  1546.             usage, the parameters are described as:
  1547.  
  1548.             OPTIONAL  parameters do not have to be included in the DOCZ
  1549.                       Header
  1550.             REQUIRED  parameters must be included in the DOCZ Header
  1551.             SINGLE    parameters may occur only once per module in the
  1552.                       DOCZ Header
  1553.             MULTIPLE  parameters may occur as many times as required in
  1554.                       the DOCZ Header (except for some limits as
  1555.                       described in "Formatting Source").
  1556.  
  1557.             PARAMETER:               .MODULE
  1558.             DESCRIPTION:        Module name
  1559.             ARGUMENTS:          One
  1560.             REQUIREMENTS:       REQUIRED, SINGLE
  1561.             TYPICAL ARGUMENTS:
  1562.             NOTES:              Module name and respective arguments
  1563.                                 must appear on the same line.  31
  1564.                                 characters maximum length, case is
  1565.                                 ignored
  1566.  
  1567.             PARAMETER:          .LIBRARY
  1568.             DESCRIPTION:        Library name
  1569.             ARGUMENTS:          One
  1570.             REQUIREMENTS:       REQUIRED, SINGLE
  1571.             TYPICAL ARGUMENTS:
  1572.             NOTES:              Delimiters and respective arguments must
  1573.                                 appear on  the same line.  11 characters
  1574.                                 maximum length.  Case is ignored.
  1575.  
  1576.             PARAMETER:          .TYPE
  1577.             DESCRIPTION:        Type of module
  1578.             ARGUMENTS:          One
  1579.             REQUIREMENTS:       REQUIRED, SINGLE
  1580.             TYPICAL ARGUMENTS:  FUNCTION, PROGRAM, MACRO
  1581.             NOTES:              Case is ignored.
  1582.  
  1583.             PARAMETER:          .DESCRIPTION
  1584.             DESCRIPTION:        Quick summary description
  1585.             ARGUMENTS:          Single line
  1586.             REQUIREMENTS:       REQUIRED, SINGLE
  1587.             TYPICAL ARGUMENTS:
  1588.             NOTES:              Approximately 75 characters maximum
  1589.                                 length, One line only.  It is used in
  1590.                                 the Quick Description Summary produced
  1591.                                 by the DOC program.
  1592.  
  1593.  
  1594.  
  1595.  
  1596.  
  1597.  
  1598.                                          29
  1599.  
  1600.  
  1601.                                FORMATTING SOURCE CODE
  1602.  
  1603.  
  1604.             PARAMETER:          .ARGUMENTS
  1605.             DESCRIPTION:        Calling parameters
  1606.             ARGUMENTS:          Multi-line
  1607.             REQUIREMENTS:       REQUIRED, SINGLE
  1608.             TYPICAL ARGUMENTS:
  1609.             NOTES:              Calling parameters for functions and
  1610.                                 macros.  Usually just a copy of the
  1611.                                 function call.  Describe the arguments
  1612.                                 as to data type.  It is used in the
  1613.                                 Quick Reference Summary produced by the
  1614.                                 DOC program.
  1615.  
  1616.             PARAMETER:          .NARRATIVE
  1617.             DESCRIPTION:        Long description
  1618.             ARGUMENTS:          Multi-line
  1619.             REQUIREMENTS:       REQUIRED, SINGLE
  1620.             TYPICAL ARGUMENTS:  Complete narrative
  1621.             NOTES:              This area is used to explain the
  1622.                                 functionality of the module and the uses
  1623.                                 of the arguments.
  1624.  
  1625.             PARAMETER:          .APPLICATION
  1626.             DESCRIPTION:        Application keyword
  1627.             ARGUMENTS:          One
  1628.             REQUIREMENTS:         QUIRED, MULTIPLE                                RE
  1629.             TYPICAL ARGUMENTS:  DATE/TIME, CONVERSION, STRING, SCREEN,
  1630.             SYSTEM
  1631.             NOTES:              A word or two to describe the general
  1632.                                 category of the module.  This parameter
  1633.                                 generates the Application Keyword
  1634.                                 Summary.  Maximum occurrences of this
  1635.                                 parameter is 8, case is ignored.  It is
  1636.                                 used in the Application Keyword Summary
  1637.                                 produced by the DOC program.
  1638.  
  1639.             PARAMETER:          .SYSTEM
  1640.             DESCRIPTION:        Operating system, Version, Compiler
  1641.             ARGUMENTS:          One
  1642.             REQUIREMENTS:       REQUIRED, MULTIPLE
  1643.             TYPICAL ARGUMENTS:  MSDOS, VMS, UNIX System V
  1644.             NOTES:              A word or two to describe the supported
  1645.                                 platform(s).  This parameter generates
  1646.                                 the Platform Summary.  Maximum
  1647.                                 occurrences of this parameter is 8, case
  1648.                                 is ignored.  It is used in the Platform
  1649.                                 Summary produced by the DOC program.
  1650.  
  1651.             PARAMETER:          .AUTHOR
  1652.             DESCRIPTION:        Author's name and department
  1653.             ARGUMENTS:          Multi-line
  1654.             REQUIREMENTS:       OPTIONAL, SINGLE
  1655.             TYPICAL ARGUMENTS:
  1656.             NOTES:
  1657.  
  1658.  
  1659.  
  1660.                                          30
  1661.  
  1662.  
  1663.                                FORMATTING SOURCE CODE
  1664.  
  1665.  
  1666.             PARAMETER:          .REVISION
  1667.             DESCRIPTION:        Revision history
  1668.             ARGUMENTS:          One argument (first line) & multi-line
  1669.             REQUIREMENTS:       OPTIONAL, MULTIPLE
  1670.             TYPICAL ARGUMENTS:  DATE (on the first line)
  1671.             NOTES:              The DATE must appear on the same line as
  1672.                                 the .REVISION delimiter.  Comments and
  1673.                                 notes on the revisions appear on
  1674.                                 following lines.  Maximum number of
  1675.                                 occurrences of this parameter is 128.
  1676.                                 It is used by the Revision Notice
  1677.                                 produced by the DOC program.
  1678.  
  1679.             PARAMETER:          .FIXES
  1680.             DESCRIPTION:        Fix history
  1681.             ARGUMENTS:          One argument (first line) & multi-line
  1682.             REQUIREMENTS:       OPTIONAL, MULTIPLE
  1683.             TYPICAL ARGUMENTS:  DATE (on the first line)
  1684.             NOTES:              The DATE must appear on the same line as
  1685.                                 the .FIXES delimiter.  Comments and
  1686.                                 notes on the fix appear on following
  1687.                                 lines.  Maximum number of occurrences of
  1688.                                 this parameter (for one module) is 128.
  1689.                                 It is used by the Fix Notice produced by
  1690.                                 the DOC program.
  1691.  
  1692.             PARAMETER:          .CAUTION
  1693.             DESCRIPTION:        Cautions concerning usage
  1694.             ARGUMENTS:          Multi-line
  1695.             REQUIREMENTS:       OPTIONAL, SINGLE
  1696.             TYPICAL ARGUMENTS:
  1697.             NOTES:              Possible unpleasant side affects,
  1698.             privileges required (VMS), etc.
  1699.  
  1700.             PARAMETER:          .OVERHEAD
  1701.             DESCRIPTION:        Memory/file usage
  1702.             ARGUMENTS:          Multi-line
  1703.             REQUIREMENTS:       OPTIONAL, SINGLE
  1704.             TYPICAL ARGUMENTS:
  1705.             NOTES:               Code, data, and stack usage
  1706.  
  1707.             PARAMETER:          .COMMENTS
  1708.             DESCRIPTION:        Miscellaneous notes
  1709.             ARGUMENTS:          Multi-line
  1710.             REQUIREMENTS:       OPTIONAL, SINGLE
  1711.             TYPICAL ARGUMENTS:
  1712.             NOTES:              This is the area to explain caveats
  1713.  
  1714.  
  1715.  
  1716.  
  1717.  
  1718.  
  1719.  
  1720.  
  1721.  
  1722.                                          31
  1723.  
  1724.  
  1725.                                FORMATTING SOURCE CODE
  1726.  
  1727.  
  1728.             PARAMETER:          .RETURNS
  1729.             DESCRIPTION:        Return value and description
  1730.             ARGUMENTS:          Multi-line
  1731.             REQUIREMENTS:       REQUIRED, SINGLE
  1732.             TYPICAL ARGUMENTS:
  1733.             NOTES:              Describe return data type, or if no data
  1734.             returned
  1735.  
  1736.             PARAMETER:          .LANGUAGE
  1737.             DESCRIPTION:        Source language of module
  1738.             ARGUMENTS:          Multi-line
  1739.             REQUIREMENTS:       OPTIONAL, SINGLE
  1740.             TYPICAL ARGUMENTS:
  1741.             NOTES:
  1742.  
  1743.             PARAMETER:          .EXAMPLE
  1744.             DESCRIPTION:        Source code for example
  1745.             ARGUMENTS:          Multi-line
  1746.             REQUIREMENTS:       OPTIONAL, SINGLE
  1747.             TYPICAL ARGUMENTS:
  1748.             NOTES:
  1749.  
  1750.             PARAMETER:          .SEE_ALSO
  1751.             DESCRIPTION:        Cross references
  1752.             ARGUMENTS:          Multi-line
  1753.             REQUIREMENTS:       OPTIONAL, SINGLE
  1754.             TYPICAL ARGUMENTS:
  1755.             NOTES:              Names of related functions or programs
  1756.  
  1757.             PARAMETER:          .NOTICE
  1758.             DESCRIPTION:        Notices
  1759.             ARGUMENTS:          Multi-line
  1760.             REQUIREMENTS:       OPTIONAL, SINGLE
  1761.             TYPICAL ARGUMENTS:
  1762.             NOTES:              Notices, such as copyright declarations
  1763.  
  1764.             PARAMETER:          .LSE
  1765.             DESCRIPTION:        LSE function call prototype
  1766.             ARGUMENTS:          Multi-line
  1767.             REQUIREMENTS:       OPTIONAL, SINGLE
  1768.             TYPICAL ARGUMENTS:
  1769.             NOTES:              This field is provided for those who
  1770.                                 wish to write a utility to extract
  1771.                                 information for their language-
  1772.                                 sensitive-editors
  1773.  
  1774.             PARAMETER:          .REFERENCES
  1775.             DESCRIPTION:        External references
  1776.             ARGUMENTS:          Multi-line
  1777.             REQUIREMENTS:       OPTIONAL, SINGLE
  1778.             TYPICAL ARGUMENTS:
  1779.             NOTES:              Names of modules that will be linked
  1780.             from other libraries
  1781.  
  1782.  
  1783.  
  1784.                                          32
  1785.  
  1786.  
  1787.                                FORMATTING SOURCE CODE
  1788.  
  1789.  
  1790.             PARAMETER:          .CONVENTIONS
  1791.             DESCRIPTION:        Conventions utilized
  1792.             ARGUMENTS:          Multi-line
  1793.             REQUIREMENTS:       OPTIONAL, SINGLE
  1794.             TYPICAL ARGUMENTS:
  1795.             NOTES:              Registers saved, registers destroyed,
  1796.             etc, if not obvious
  1797.  
  1798.             PARAMETER:          .DIAGRAM
  1799.             DESCRIPTION:        Program flow diagram
  1800.             ARGUMENTS:          Multi-line
  1801.             REQUIREMENTS:       OPTIONAL, SINGLE
  1802.             TYPICAL ARGUMENTS:
  1803.             NOTES:              Flow diagram in the caller's favorite
  1804.                                 code methodology, such as pseudo-code.
  1805.  
  1806.             PARAMETER:          .PAGE
  1807.             DESCRIPTION:        Page break
  1808.             ARGUMENTS:          None
  1809.             REQUIREMENTS:       OPTIONAL, MULTIPLE
  1810.             TYPICAL ARGUMENTS:  (none)
  1811.             NOTES:              .PAGE is actually a pseudo-parameter.
  1812.                                 Appearance of this parameter at the
  1813.                                 beginning of a line in the body of the
  1814.                                 description of a parameter, causes a
  1815.                                 page-break in the output documentation.
  1816.  
  1817.             PARAMETER:          .INCLUDES
  1818.             DESCRIPTION:        Required include files
  1819.             ARGUMENTS:          Multi-line
  1820.             REQUIREMENTS:       OPTIONAL, SINGLE
  1821.             TYPICAL ARGUMENTS:  Header file names
  1822.             NOTES:
  1823.  
  1824.             PARAMETER:          .ERRORS
  1825.             DESCRIPTION:        Action taken on error conditions
  1826.             ARGUMENTS:          Multi-line
  1827.             REQUIREMENTS:       OPTIONAL, SINGLE
  1828.             TYPICAL ARGUMENTS:
  1829.             NOTES:              Descriptions of actions taken as a
  1830.                                 result of error conditions, such as
  1831.                                 displaying messages, logging, etc.
  1832.  
  1833.             PARAMETER:          .ENDOC
  1834.             DESCRIPTION:        End of documentation header
  1835.             ARGUMENTS:          No arguments (arguments are ignored)
  1836.             REQUIREMENTS:       REQUIRED, SINGLE
  1837.             TYPICAL ARGUMENTS:  (NO arguments)
  1838.             NOTES:
  1839.  
  1840.  
  1841.  
  1842.  
  1843.  
  1844.  
  1845.  
  1846.                                          33
  1847.  
  1848.  
  1849.                                FORMATTING SOURCE CODE
  1850.  
  1851.  
  1852.             Parameter Summary
  1853.  
  1854.  
  1855.  
  1856.             Parameter            Multiple     Single     Optional    Required
  1857.  
  1858.             .MODULE (first)                   +++++++                 +++++++
  1859.  
  1860.             .LIBRARY                          +++++++                 +++++++
  1861.  
  1862.             .TYPE                             +++++++                 +++++++
  1863.  
  1864.             .DESCRIPTION                      +++++++                 +++++++
  1865.  
  1866.             .ARGUMENTS                        +++++++                 +++++++
  1867.  
  1868.             .NARRATIVE                        +++++++                 +++++++
  1869.  
  1870.             .APPLICATION          +++++++                             +++++++
  1871.  
  1872.             .SYSTEM               +++++++                             +++++++
  1873.  
  1874.             .RETURNS                          +++++++                 +++++++
  1875.  
  1876.             .ENDOC (last)                     +++++++                 +++++++
  1877.  
  1878.             .AUTHOR                           +++++++     +++++++
  1879.  
  1880.             .REVISIONS            +++++++                 +++++++
  1881.  
  1882.             .FIXES                +++++++                 +++++++
  1883.  
  1884.             .CAUTION                          +++++++     +++++++
  1885.  
  1886.             .OVERHEAD                         +++++++     +++++++
  1887.  
  1888.             .COMMENTS                         +++++++     +++++++
  1889.  
  1890.             .LANGUAGE                         +++++++     +++++++
  1891.  
  1892.             .EXAMPLE                          +++++++     +++++++
  1893.  
  1894.             .SEE_ALSO                         +++++++     +++++++
  1895.  
  1896.             .NOTICE                           +++++++     +++++++
  1897.  
  1898.             .LSE                              +++++++     +++++++
  1899.  
  1900.             .REFERENCES                       +++++++     +++++++
  1901.  
  1902.             .CONVENTIONS                      +++++++     +++++++
  1903.  
  1904.             .DIAGRAM                          +++++++     +++++++
  1905.  
  1906.  
  1907.  
  1908.                                          34
  1909.  
  1910.  
  1911.                                FORMATTING SOURCE CODE
  1912.  
  1913.  
  1914.  
  1915.             .PAGE                 +++++++                 +++++++
  1916.  
  1917.             .INCLUDES                         +++++++     +++++++
  1918.  
  1919.             .ERRORS                           +++++++     +++++++
  1920.  
  1921.  
  1922.  
  1923.  
  1924.  
  1925.  
  1926.  
  1927.  
  1928.  
  1929.  
  1930.  
  1931.  
  1932.  
  1933.  
  1934.  
  1935.  
  1936.  
  1937.  
  1938.  
  1939.  
  1940.  
  1941.  
  1942.  
  1943.  
  1944.  
  1945.  
  1946.  
  1947.  
  1948.  
  1949.  
  1950.  
  1951.  
  1952.  
  1953.  
  1954.  
  1955.  
  1956.  
  1957.  
  1958.  
  1959.  
  1960.  
  1961.  
  1962.  
  1963.  
  1964.  
  1965.  
  1966.  
  1967.  
  1968.  
  1969.  
  1970.                                          35
  1971.  
  1972.  
  1973.                                    ADDING/UPDATING
  1974.  
  1975.  
  1976.             Building Documentation Libraries
  1977.  
  1978.  
  1979.             To either add or update a module in DOCZ you must:
  1980.  
  1981.                  (1)  Provide the source file with a documentation
  1982.                       header with all required fields filled-in, and as
  1983.                       many optional fields filled-in as desirable.  One
  1984.                       documentation header is required for each of the
  1985.                       modules in the source file.
  1986.  
  1987.                  (2)  Copy or rename the source file containing the
  1988.                       module(s) to the location that will be specified
  1989.                       as the "source file" to the DOCXL program, or use
  1990.                       your version control software to insert the file
  1991.                       into the source code library or source code
  1992.                       library directory.
  1993.  
  1994.                  VMS version:
  1995.  
  1996.                       You may wish to convert the file to Stream_LF at
  1997.                       this time, so that the DOC program will not have
  1998.                       to perform the conversion while it is processing.
  1999.                       An FDL is provided in the data directory for this
  2000.                       purpose.  If the source is to be maintained in a
  2001.                           library, instead of copying the file to the                      CMS
  2002.                       documentation directory, use CMS to insert (or
  2003.                       update) the file in the CMS library.
  2004.  
  2005.                            CONVERT/FDL=DOCDAT:STREAM <filename>
  2006.  
  2007.                  (3)  Run the DOCXL program to update the Documentation
  2008.                       Index File.
  2009.  
  2010.             The command line format for the DOCXL program, to update or
  2011.             add a module is:
  2012.  
  2013.                  DOCXL <library name> <module name> <source file>
  2014.  
  2015.  
  2016.  
  2017.  
  2018.  
  2019.  
  2020.  
  2021.  
  2022.  
  2023.  
  2024.  
  2025.  
  2026.  
  2027.  
  2028.  
  2029.  
  2030.  
  2031.  
  2032.                                          37
  2033.  
  2034.  
  2035.                                    ADDING/UPDATING
  2036.  
  2037.  
  2038.             where:
  2039.  
  2040.                  library name
  2041.  
  2042.                       is the name you have chosen to collect this
  2043.                       program/function logically (see "Naming
  2044.                       Conventions").  The library name must not contain
  2045.                       any punctuation (except the underscore character).
  2046.  
  2047.                  module name
  2048.  
  2049.                       is the name for this module.  The module name must
  2050.                       not contain any punctuation (except the underscore
  2051.                       character).
  2052.  
  2053.                  source file
  2054.  
  2055.                       is the name of the source file containing the
  2056.                       module.  If the file is to be located in a sub-
  2057.                       directory of the default source directory (i.e.
  2058.                       pointed to by the DOCSRC symbol or logical name),
  2059.                       no device or directory need be specified.  The
  2060.                       sub-directory name will be the name of the library
  2061.                       (in upper case).  It is usually most convenient to
  2062.                       specify the file name only, but if you choose to
  2063.                       specify a full path, the DOCZ system will
  2064.                       optionally perform symbol substitution imbedded in
  2065.                       directory specifications.  Surround the symbol
  2066.                       with the dollar sign, ($), and an attempt will be
  2067.                       made to find a substitution in the environment
  2068.                       (either CLI symbols or (VMS) logical names) when
  2069.                       the source file is extracted.  For example:
  2070.  
  2071.                            $HEADER$fred.c
  2072.  
  2073.                       in which an attempt will be made to substitute for
  2074.                       HEADER, if an equivalent exists in the
  2075.                       environment.
  2076.  
  2077.             The DOCXL program will read the command line arguments and
  2078.             update the Documentation Index with the module's name and
  2079.             file in which it is contained.  If the module did not
  2080.             previously exist in the index, it is added at the end, and
  2081.             the introduction date for that module is set to the current
  2082.             date.  If the module did previously exist, the modification
  2083.             date and time are set to the current date and time.  If a
  2084.             new source file specification for a previously existing
  2085.             module is specified, the file specification field is updated
  2086.             with the new data.
  2087.  
  2088.             The DOCXL program does not open the module source file or
  2089.             attempt to validate the documentation header for the module;
  2090.             this is only done by the DOC program, at the time
  2091.             documentation is being produced.  Wildcards are not honored,
  2092.  
  2093.  
  2094.                                          38
  2095.  
  2096.  
  2097.                                    ADDING/UPDATING
  2098.  
  2099.  
  2100.             and only one module can be added or updated by the DOCXL
  2101.             program at a time (but see the DOCLIS program for automatic
  2102.             multiple adds/updates).  If a source file contains several
  2103.             modules, DOCXL must be run once for each module, even though
  2104.             the same source file is specified each time.
  2105.  
  2106.             Modules with the same module name may be specified in
  2107.             different libraries without conflict.
  2108.  
  2109.             It is recommended that lower case be used for file
  2110.             specifications on VMS and MSDOS systems, to allow easier
  2111.             transporting of the Documentation Index File to Unix systems
  2112.             (using the ASCII Transport File feature).
  2113.  
  2114.             The DOC program may now be run against the module.  The DOC
  2115.             program will produce the output documentation for one or
  2116.             more modules in a library, or for all modules in a library.
  2117.             The DOC program is also capable of producing Change Notices,
  2118.             Revision Notices, Introduction Notices, and Fix Notices.
  2119.             See the next section for details.
  2120.  
  2121.  
  2122.  
  2123.  
  2124.  
  2125.  
  2126.  
  2127.  
  2128.  
  2129.  
  2130.  
  2131.  
  2132.  
  2133.  
  2134.  
  2135.  
  2136.  
  2137.  
  2138.  
  2139.  
  2140.  
  2141.  
  2142.  
  2143.  
  2144.  
  2145.  
  2146.  
  2147.  
  2148.  
  2149.  
  2150.  
  2151.  
  2152.  
  2153.  
  2154.  
  2155.  
  2156.                                          39
  2157.  
  2158.  
  2159.                               PUBLISHING DOCUMENTATION
  2160.  
  2161.  
  2162.             Full Library Documentation
  2163.  
  2164.             The command line format for the DOC program, to produce all
  2165.             of the documentation for a single library is:
  2166.  
  2167.                  DOC <library name>
  2168.  
  2169.             For the specified library name, the DOC program will:
  2170.  
  2171.                  (1)  build a title page as a cover for the
  2172.                       documentation
  2173.  
  2174.                  (2)  format a "library introduction" for presentation
  2175.                       at the front of the library documentation.  See
  2176.                       the next section for details.
  2177.  
  2178.                  (3)  scan the index for all modules in the specified
  2179.                       library
  2180.  
  2181.                  (4)  sort the module names alphabetically
  2182.  
  2183.                  (5)  scan each of the source files for the
  2184.                       documentation header for each of the modules
  2185.  
  2186.                  (6)  extract the documentation parameters with their
  2187.                       associated arguments
  2188.  
  2189.                  (7)  reformat the documentation into print image
  2190.  
  2191.                  (8)  format the print image with page numbers, page
  2192.                       headers, page footers, etc.
  2193.  
  2194.                  (9)  build an alphabetical table of contents
  2195.  
  2196.                  (10) build a module description summary
  2197.  
  2198.                  (12) build a operating system platform summary
  2199.  
  2200.                  (13) build a list of modules with their associated
  2201.                       application keywords sorted alphabetically
  2202.  
  2203.                  (14) build a set of alphabetically sorted permutations
  2204.                       of the module descriptions
  2205.  
  2206.                  (15) build a quick-reference of module argument
  2207.                       parameters and output it to the documentation
  2208.  
  2209.                  (16) if any modules have improper documentation, the
  2210.                       names of the modules and the errors detected will
  2211.                       be output to a file, <library name>.ERR.
  2212.  
  2213.  
  2214.  
  2215.  
  2216.  
  2217.  
  2218.                                          41
  2219.  
  2220.  
  2221.                               PUBLISHING DOCUMENTATION
  2222.  
  2223.  
  2224.             Printing
  2225.  
  2226.             The DOC program does not print directly to print devices or
  2227.             queues.  It produces a file, <library name>.DOC in the
  2228.             default directory which has been formatted into print image
  2229.             and can be sent to a printing device.  The file can be
  2230.             deleted after printing, if it is no longer needed.
  2231.  
  2232.  
  2233.  
  2234.             The Library Introduction
  2235.  
  2236.             When the full library documentation is generated, the DOC
  2237.             program searches the Documentation Reference Directory for a
  2238.             file with the same name as the library specified, and with
  2239.             the extension ".COV" (in upper case on the Unix platform).
  2240.             If found, this file will be reformatted into print image and
  2241.             presented after the title page of the library documentation.
  2242.             This file should contain raw text, with no documentation
  2243.             parameters.
  2244.  
  2245.             For example:  the name of the library for which your are
  2246.             generating full library documentation is "CLIB."  The DOC
  2247.             program is invoked by:
  2248.  
  2249.                  DOC CLIB
  2250.  
  2251.             The Documentation Reference Directory is scanned for a file
  2252.             named "CLIB.COV," and it is included in the output
  2253.             documentation just after the title page.
  2254.  
  2255.  
  2256.  
  2257.  
  2258.  
  2259.  
  2260.  
  2261.  
  2262.  
  2263.  
  2264.  
  2265.  
  2266.  
  2267.  
  2268.  
  2269.  
  2270.  
  2271.  
  2272.  
  2273.  
  2274.  
  2275.  
  2276.  
  2277.  
  2278.  
  2279.  
  2280.                                          42
  2281.  
  2282.  
  2283.                               PUBLISHING DOCUMENTATION
  2284.  
  2285.  
  2286.             Revision/Fix Notices
  2287.  
  2288.             The command line format for the DOC program, to produce a
  2289.             Revision Notice for a single library name is:
  2290.  
  2291.                  DOC <library name> </r[=DATE]>
  2292.  
  2293.             The command line format for the DOC program, to produce a
  2294.             Fix Notice for a single library name is:
  2295.  
  2296.                  DOC <library name> </f[=DATE]>
  2297.  
  2298.             If the options are specified with no dates, as in:
  2299.  
  2300.                  DOC ULIB /F
  2301.  
  2302.             the current day's date will be used (see the DOCZ PROGRAM
  2303.             REFERENCE, EXAMPLES).  Revision and Fix Notices are based on
  2304.             the dates in the documentation headers accompanied by the
  2305.             respective .REVISION or .FIXES parameters.  The revision or
  2306.             fix description and date are provided by the programmer when
  2307.             the changes to the code is performed.
  2308.  
  2309.             The revision or fix date is specified in the usual date
  2310.                    (leading zeros not required in the default date            format
  2311.             format), and the date is inclusive.  Case is ignored in all
  2312.             arguments to DOC.
  2313.  
  2314.             For the specified library name, the DOC program will:
  2315.  
  2316.                  (1)  build a title page as a cover for the
  2317.                       documentation that specifies that this
  2318.                       documentation is a revision or fix notice
  2319.  
  2320.                  (2)  scan the index for all modules in the specified
  2321.                       library that have a modification date equal to or
  2322.                       later than the date specified on the command line
  2323.  
  2324.                  (3)  sort the module names alphabetically
  2325.  
  2326.                  (4)  scan each of the source files for the
  2327.                       documentation header for each of the modules
  2328.  
  2329.                  (7)  extract the documentation parameters with their
  2330.                       associated arguments for only those modules that
  2331.                       have a revision or fix date specified (with the
  2332.                       .REVISION or .FIXES parameter) that is the same
  2333.                       as, or later than the date specified on the
  2334.                       command line to the DOC program.  All source files
  2335.                       will be read, but documentation will be output for
  2336.                       only those modules that match the above criteria.
  2337.  
  2338.                  (8)  reformat the data into print image, as for the
  2339.                       full library documentation.
  2340.  
  2341.  
  2342.                                          43
  2343.  
  2344.  
  2345.                               PUBLISHING DOCUMENTATION
  2346.  
  2347.  
  2348.  
  2349.                  (9)  no index, quick-reference, table of contents, or
  2350.                       application keyword index will be output.
  2351.  
  2352.  
  2353.  
  2354.  
  2355.  
  2356.  
  2357.  
  2358.  
  2359.  
  2360.  
  2361.  
  2362.  
  2363.  
  2364.  
  2365.  
  2366.  
  2367.  
  2368.  
  2369.  
  2370.  
  2371.  
  2372.  
  2373.  
  2374.  
  2375.  
  2376.  
  2377.  
  2378.  
  2379.  
  2380.  
  2381.  
  2382.  
  2383.  
  2384.  
  2385.  
  2386.  
  2387.  
  2388.  
  2389.  
  2390.  
  2391.  
  2392.  
  2393.  
  2394.  
  2395.  
  2396.  
  2397.  
  2398.  
  2399.  
  2400.  
  2401.  
  2402.  
  2403.  
  2404.                                          44
  2405.  
  2406.  
  2407.                               PUBLISHING DOCUMENTATION
  2408.  
  2409.  
  2410.             Change Notices
  2411.  
  2412.             The command line format for the DOC program, to produce a
  2413.             Change Notice for a single library name is:
  2414.  
  2415.                  DOC <library name> </m[=DATE]>
  2416.  
  2417.                  (1)  Operation is the same as a Revision/Fix Notice,
  2418.                       except that only modules that have been modified
  2419.                       on or since the date specified will have
  2420.                       documentation output.  The documentation headers
  2421.                       do not have to be modified for Change Notices.
  2422.                       Modification dates are maintained in the
  2423.                       Documentation Index File.
  2424.  
  2425.             This Change Notice is provided to provide library
  2426.             documentation to users who must be provided with the very
  2427.             latest documentation.
  2428.  
  2429.  
  2430.  
  2431.             Library Summary
  2432.  
  2433.             A Library Summary consists of the following:
  2434.  
  2435.                  (1)  a title page as a cover for the documentation
  2436.  
  2437.                  (2)  a "Library Introduction" for presentation at the
  2438.                       front of the library documentation.
  2439.  
  2440.                  (3)  a module description summary
  2441.  
  2442.                  (4)  an operating system platform summary
  2443.  
  2444.                  (5)  a list of modules with their associated
  2445.                       application keywords sorted alphabetically
  2446.  
  2447.                  (6)  a set of alphabetically sorted permutations of the
  2448.                       module descriptions
  2449.  
  2450.                  (7)  a quick-reference of module argument parameters
  2451.                       and output it to the documentation
  2452.  
  2453.                  (8)  if any modules have improper documentation, the
  2454.                       names of the modules and the errors detected will
  2455.                       be output to a file, <library name>.ERR.
  2456.  
  2457.  
  2458.  
  2459.  
  2460.  
  2461.  
  2462.  
  2463.  
  2464.  
  2465.  
  2466.                                          45
  2467.  
  2468.  
  2469.                               PUBLISHING DOCUMENTATION
  2470.  
  2471.  
  2472.             All of this information is provided with the "Full Library
  2473.             Documentation" except that none of the individual module
  2474.             documentation appears in the Library Summary.  You will find
  2475.             that the publishing of several introduction, revision,
  2476.             and/or fix notices may make the summary substantially out-
  2477.             of-date (some programmers may tend to use only the summary,
  2478.             anyway).  The /s option provides a current summary.
  2479.  
  2480.                  DOC <library name> </s>
  2481.  
  2482.  
  2483.  
  2484.  
  2485.  
  2486.  
  2487.  
  2488.  
  2489.  
  2490.  
  2491.  
  2492.  
  2493.  
  2494.  
  2495.  
  2496.  
  2497.  
  2498.  
  2499.  
  2500.  
  2501.  
  2502.  
  2503.  
  2504.  
  2505.  
  2506.  
  2507.  
  2508.  
  2509.  
  2510.  
  2511.  
  2512.  
  2513.  
  2514.  
  2515.  
  2516.  
  2517.  
  2518.  
  2519.  
  2520.  
  2521.  
  2522.  
  2523.  
  2524.  
  2525.  
  2526.  
  2527.  
  2528.                                          46
  2529.  
  2530.  
  2531.                               PUBLISHING DOCUMENTATION
  2532.  
  2533.  
  2534.             Single Module Documentation
  2535.  
  2536.             The command line format for the DOC program, to produce
  2537.             documentation for one or more modules in a library is:
  2538.  
  2539.                  DOC <library name> <module name>
  2540.  
  2541.                       or
  2542.  
  2543.                  DOC <library name> <module name> <module name> ...
  2544.  
  2545.                  (1)  Only the documentation for the module or modules
  2546.                       specified, will be generated.  There will be no
  2547.                       title page, index, quick-reference, or application
  2548.                       keyword index.
  2549.  
  2550.             Whenever a new module is added to your DOCZ library, you
  2551.             should run the DOC program on the module to verify that the
  2552.             documentation header has been formatted correctly.
  2553.  
  2554.  
  2555.  
  2556.  
  2557.  
  2558.  
  2559.  
  2560.  
  2561.  
  2562.  
  2563.  
  2564.  
  2565.  
  2566.  
  2567.  
  2568.  
  2569.  
  2570.  
  2571.  
  2572.  
  2573.  
  2574.  
  2575.  
  2576.  
  2577.  
  2578.  
  2579.  
  2580.  
  2581.  
  2582.  
  2583.  
  2584.  
  2585.  
  2586.  
  2587.  
  2588.  
  2589.  
  2590.                                          47
  2591.  
  2592.  
  2593.                                   SELECTING OPTIONS
  2594.  
  2595.  
  2596.             The Configuration File
  2597.  
  2598.             A great variety of options are enabled and customized
  2599.             through the use of the Configuration File.  This section
  2600.             explains how to format records in that file to select such
  2601.             options as printing output enhancement, error and
  2602.             informational logging, alternate directory structures,
  2603.             language independence, and custom interfaces to version
  2604.                     software.            control
  2605.  
  2606.             The Configuration File is a text data file and can be
  2607.             generated with a text editor.  The file name must be
  2608.             "DOCZ.CFG" (in upper-case on the Unix platform).    A
  2609.             prototype DOCZ.CFG file is produced during the installation
  2610.             procedure.
  2611.  
  2612.             There can be more than one DOCZ Configuration File on the
  2613.             system at a time.  This condition is allowed to support
  2614.             Configuration Files for several different printers on the
  2615.             system.  The DOCZ programs search the current directory
  2616.             first for the Configuration File.  If none is found in the
  2617.             current directory, the Documentation Reference Directory is
  2618.             then searched.
  2619.  
  2620.  
  2621.  
  2622.             The Printer Interface
  2623.  
  2624.             DOCZ provides a means to enhance the format of the output
  2625.             documentation through the use of printer features.  Due to
  2626.             the immense number of features available on today's
  2627.             printers, only a minimum number of features can be
  2628.             implemented; but, they are the type of features that provide
  2629.             for very readable documentation.  You will find that a large
  2630.             library under the control of a DOCZ System can produce very
  2631.             voluminous documentation.  Hence, you will want to get as
  2632.             many lines of output on your printed documentation as is
  2633.             possible, while still maintaining readability.
  2634.  
  2635.             If the Configuration File does not exist or does not contain
  2636.             any printer options when the DOC program is run, the output
  2637.             will be formatted for a "generic" printer.  A minimum
  2638.             requirement for any printer used by DOCZ is that the printer
  2639.             be able to perform a form-feed.
  2640.  
  2641.  
  2642.  
  2643.  
  2644.  
  2645.  
  2646.  
  2647.  
  2648.  
  2649.  
  2650.  
  2651.  
  2652.                                          49
  2653.  
  2654.  
  2655.                                   SELECTING OPTIONS
  2656.  
  2657.  
  2658.             To select printer options, Configuration File records are
  2659.             formatted as in:
  2660.  
  2661.                  KEY,PARAMETER
  2662.  
  2663.             where:
  2664.  
  2665.                  KEY       PARAMETER
  2666.  
  2667.                  PC,       Number of columns (Ex: 132, default is 80)
  2668.                  PN,       Number of lines per page (default is 66)
  2669.                  PL,       Left margin (default is 0)
  2670.                  PR,       Right margin (default is 0)
  2671.                  PA,       Name of the printer (default is no printer
  2672.                            name)
  2673.                  PI,       Initialization tokens from PSET (up to 8)
  2674.                  PE,       Exit tokens from PSET (up to 8)
  2675.  
  2676.             The KEY case is ignored, and the case of the PSET tokens is
  2677.             always ignored.  All occurrences of KEYs in the
  2678.             Configuration File are optional, and only the parameters
  2679.             specified will be modified.  If not modified, all parameters
  2680.             will default to values appropriate for a "generic" printer.
  2681.             See the DOCZ Utility documentation for more information on
  2682.             installing printer control sequences using PSET and/or
  2683.             PCODE.
  2684.  
  2685.             The KEYs must be the first character in the line.  If a
  2686.             pound symbol (#) appears as the first character in a line,
  2687.             that line is ignored (and taken as a comment).  The printer
  2688.             name, specified by 'pa', must be the same as the installed
  2689.             in the PSET database for the _PRINTER token
  2690.  
  2691.                  VMS version:   PSET.DAT must be in the data directory.
  2692.                                 DOCZ.CFG must be in the current
  2693.                                 directory or the Reference Directory
  2694.  
  2695.                  MSDOS & UNIX:  PSET.DAT must be in the search PATH.
  2696.                                 DOCZ.CFG must be in the current
  2697.                                 directory or the Reference Directory
  2698.  
  2699.             An example of DOCZ.CFG:
  2700.  
  2701.                  # the name of the printer
  2702.                  pa,DEC LN03
  2703.                  # 88 columns
  2704.                  pc,88
  2705.                  # 60 lines
  2706.                  pn,60
  2707.                  # left margin = 8
  2708.                  pl,8
  2709.                  # initialize, reset to power-up state
  2710.                  pi,lzreset
  2711.                  # vertical pitch = 9
  2712.  
  2713.  
  2714.                                          50
  2715.  
  2716.  
  2717.                                   SELECTING OPTIONS
  2718.  
  2719.  
  2720.                  pi,lzvp8
  2721.                  # horizontal pitch = 12
  2722.                  pi,lzhp12
  2723.                  # defeat top and bottom margins
  2724.                  pi,lznotbm
  2725.                  # exit, reset to power-up state
  2726.                  pe,lzreset
  2727.  
  2728.             The pa parameter in the above example causes the DOC program
  2729.             to verify the PSET database for the printer specified.  If
  2730.             the argument matches the printer installed in the PSET
  2731.             database with the PCODE utility, character attributes will
  2732.             be utilized to enhance the appearance of the output
  2733.             documentation.  To defeat the use of character attributes,
  2734.             omit the use of an pa parameter.
  2735.  
  2736.             The pc parameter specifies that 88 columns will be produced
  2737.             in the output; this assumes that the horizontal pitch on the
  2738.             printer will have been adjusted to allow 88 columns on the
  2739.             printed page.   The pn parameter specifies that only 60
  2740.             lines per page will be output, instead of the default 66.
  2741.  
  2742.  
  2743.  
  2744.  
  2745.  
  2746.  
  2747.  
  2748.  
  2749.  
  2750.  
  2751.  
  2752.  
  2753.  
  2754.  
  2755.  
  2756.  
  2757.  
  2758.  
  2759.  
  2760.  
  2761.  
  2762.  
  2763.  
  2764.  
  2765.  
  2766.  
  2767.  
  2768.  
  2769.  
  2770.  
  2771.  
  2772.  
  2773.  
  2774.  
  2775.  
  2776.                                          51
  2777.  
  2778.  
  2779.                                   SELECTING OPTIONS
  2780.  
  2781.  
  2782.             The four pi parameters specify four tokens that will be
  2783.             matched from the PSET database to provide four
  2784.             initialization sequences to be output to the printer before
  2785.             any printing is done.  The single pe parameter specifies an
  2786.             exit sequence that will be sent to the printer at the end of
  2787.             printing.  Note that the tokens specified in the above
  2788.             example are user-supplied (provided by you).  In a typical
  2789.             application, the above example tokens could represent:
  2790.  
  2791.                  lzreset = reset to power-up configuration
  2792.                  lzvp8 = set vertical pitch to 8 l.p.i.
  2793.                  lzhp12 = set horizontal pitch to 12 c.p.i.
  2794.                  lznotbm = defeat top and bottom margins
  2795.  
  2796.             The DOCZ Installation Kit will provide a prototype DOCZ.CFG
  2797.             Configuration File, but it will contain no print formatting
  2798.             information.  No assumptions about your printer hardware are
  2799.             made.  The PCODE utility is supplied with DOCZ to provide
  2800.             printer features for many of the popular brands of printers.
  2801.             You may add your own parameters to the prototype DOCZ.CFG.
  2802.  
  2803.  
  2804.  
  2805.  
  2806.  
  2807.  
  2808.  
  2809.  
  2810.  
  2811.  
  2812.  
  2813.  
  2814.  
  2815.  
  2816.  
  2817.  
  2818.  
  2819.  
  2820.  
  2821.  
  2822.  
  2823.  
  2824.  
  2825.  
  2826.  
  2827.  
  2828.  
  2829.  
  2830.  
  2831.  
  2832.  
  2833.  
  2834.  
  2835.  
  2836.  
  2837.  
  2838.                                          52
  2839.  
  2840.  
  2841.                                   SELECTING OPTIONS
  2842.  
  2843.  
  2844.             Multiple Language Support
  2845.  
  2846.             The compiler or assembler is made to ignore everything in
  2847.             the documentation header by surrounding the documentation
  2848.             header with conditional compile (or assembly) directives
  2849.             (for those languages that support such).  Most PASCAL and C
  2850.             compilers and many Assembly language assemblers allow
  2851.             conditionals.  For languages that allow only single-line
  2852.             comments, such as BASIC, COBOL, and FORTRAN, the user may
  2853.             specify a "comment string mask" that describes the comment
  2854.             format for the language being used.  The comment string mask
  2855.             may be specified to the DOCZ system using the DOCZ
  2856.             Configuration File (DOCZ.CFG) by specifying the file name
  2857.             extension associated with files containing the computer
  2858.             language (see "Specifying Comment String Masks for File
  2859.             Extensions" in a following section).
  2860.  
  2861.  
  2862.  
  2863.             Specifying a Comment String Mask
  2864.  
  2865.             The comment string mask is formatted such that:
  2866.  
  2867.                  ?        hes any single character                      matc
  2868.  
  2869.                  n    causes all numerics to be skipped (such as line
  2870.                       numbers).  n is specified only once in the comment
  2871.                       string mask to skip all numerics starting at the
  2872.                       corresponding position in the input source line.
  2873.  
  2874.                  Any other character is matched literally (including
  2875.                  spaces and TAB characters).
  2876.  
  2877.             The comment string mask is always specified with double
  2878.             quotation marks to preserve leading or trailing blanks.
  2879.  
  2880.             DOCZ System programs always expand TAB characters to spaces
  2881.             at tabstop eight, or to the tabstop specified with the o
  2882.             option in the Configuration File.  Consequently, if a TAB is
  2883.             part of the comment string mask, it must be replaced with
  2884.             the requisite number of spaces.
  2885.  
  2886.             Comment String Mask Examples:
  2887.  
  2888.                  BASIC          "n '"
  2889.  
  2890.                       Match any number of digits that start in column
  2891.                       one, then match a space, then match an apostrophe.
  2892.  
  2893.                  COBOL     "* "
  2894.  
  2895.                       Match an asterisk in column one and a space in
  2896.                       column two.
  2897.  
  2898.  
  2899.  
  2900.                                          53
  2901.  
  2902.  
  2903.                                   SELECTING OPTIONS
  2904.  
  2905.  
  2906.                  FORTRAN   "C "
  2907.  
  2908.                       Match an upper-case C in column one and space in
  2909.                       column two.
  2910.  
  2911.             Note that if a TAB were to follow the 'C' in the FORTRAN
  2912.             example, the comment string mask would be specified:
  2913.  
  2914.                  "C       "
  2915.  
  2916.             which is a 'C' followed by seven space characters.  This
  2917.             mask will match when the DOCZ programs expand TAB characters
  2918.             to spaces at tabstop eight.
  2919.  
  2920.  
  2921.  
  2922.             Specifying Comment String Masks for File Extensions
  2923.  
  2924.             This method for specifying a comment string mask using
  2925.             DOCZ.CFG applies a comment string for every source file with
  2926.             a specified file name extension.  The entries in DOCZ.CFG
  2927.             are specified as in:
  2928.  
  2929.                  E,<extension>,<comment string mask>
  2930.  
  2931.             The following is also valid:
  2932.  
  2933.                  E,,<comment string mask>
  2934.  
  2935.             and specifies a comment string mask for filenames with no
  2936.             extension (such as Unix shell scripts).
  2937.  
  2938.             The following comment string masks are provided in the
  2939.             prototype Configuration File by the Installation Program and
  2940.             may be added-to or modified to suite your development
  2941.             environment:
  2942.  
  2943.                  E,BAS,"n '"
  2944.                  E,COB,"* "
  2945.                  E,FOR,"C "
  2946.                  E,PRG,"* "
  2947.  
  2948.             The case of parameters is always ignored.
  2949.  
  2950.             For assemblers that do not allow "ifdefs," you may need to
  2951.             add:
  2952.  
  2953.                  E,ASM,";"
  2954.  
  2955.  
  2956.  
  2957.  
  2958.  
  2959.  
  2960.  
  2961.  
  2962.                                          54
  2963.  
  2964.  
  2965.                                   SELECTING OPTIONS
  2966.  
  2967.  
  2968.             Transaction Logging
  2969.  
  2970.             The DOCZ programs provide a logging facility that can help
  2971.             automate the administration of a DOCZ System.  The logging
  2972.             facility allows the recording of errors and information in a
  2973.             file in the Documentation Reference Directory, named
  2974.             DOCZ.LOG.  The various levels of logging are:
  2975.  
  2976.                  Informational (I)        Status or result of an
  2977.                                           operation
  2978.  
  2979.                  Warning (W)              Notification of an unnatural
  2980.                                           condition, but that does not
  2981.                                           prevent DOCZ processing
  2982.  
  2983.                  Error (E)                Notification of an incorrect
  2984.                                           condition that probably
  2985.                                           prevents normal processing
  2986.  
  2987.                  Fatal (F)                A severe error condition that
  2988.                                           may leave DOCZ files in an
  2989.                                           unknown state or condition
  2990.                                           that may have to be manually
  2991.                                           repaired.
  2992.  
  2993.                  Statistics (S)           Information about time and
  2994.                                           resources for statistical
  2995.                                           purposes.
  2996.  
  2997.             All such conditions are always echoed to the controlling
  2998.             terminal, but, in an automated DOCZ System, such message are
  2999.             often lost or left unnoticed.  If logging is enabled, these
  3000.             messages will be stored where they can be retrieved for
  3001.             examination at a later time.
  3002.  
  3003.             The error level (i.e. Informational, Warning, Error, Fatal,
  3004.             or Statistical) that is logged is under user control:  that
  3005.             is the user can specify zero or more error levels to be
  3006.             logged.  The logging error levels are specified in the
  3007.             Configuration File using an entry in the following format:
  3008.  
  3009.                  L,<error level list>,<number of days to keep entries>
  3010.  
  3011.             where the error level list (field number 2) may contain zero
  3012.             or more of I, W, E, or F.  The default is E and F, which
  3013.             will be used if there is no 'L' record in the Configuration
  3014.             File.  This means that, by default, there will be a DOCZ.LOG
  3015.             created in the Documentation Reference Directory and it will
  3016.             contain messages for every Error and Fatal condition.  The
  3017.             number of days to keep entries (field number 3) specifies
  3018.             the number of days to age entries before they expire and are
  3019.             removed from the log (to prevent the log from growing
  3020.             endlessly).  The default aging period is thirty days.
  3021.  
  3022.  
  3023.  
  3024.                                          55
  3025.  
  3026.  
  3027.                                   SELECTING OPTIONS
  3028.  
  3029.  
  3030.             An empty field number two, as in:
  3031.  
  3032.                  L,
  3033.  
  3034.             defeats all logging.
  3035.  
  3036.             The following example:
  3037.  
  3038.                  # log all messages
  3039.                  L,IEWFS,60
  3040.  
  3041.             specifies that all error levels are to be logged, and
  3042.             entries over sixty days old will be removed (the '#'
  3043.             character precedes comments in the Configuration File).
  3044.  
  3045.             As in the other DOCZ programs and utilities, case is always
  3046.             ignored.
  3047.  
  3048.             Aged entries are always checked the first time a DOCZ
  3049.             program accesses the log, consequently, if a log "cleaning"
  3050.             operation is required (aged entries to be removed), there
  3051.             will be a slight delay in the program while the "cleaning"
  3052.             operation is carried out.  This negates the need for an
  3053.             administrator to manually force a periodic clean-up of the
  3054.             DOCZ log.
  3055.  
  3056.             If "informational" (I) logging is enabled, a history of the
  3057.             DOCZ System usage will be maintained in the log.  This can
  3058.             be a substantial help when administering a DOCZ System that
  3059.             exists on more than one operating system platform.  The
  3060.             DOCLOG program is provided to scan the DOCZ log and produce
  3061.             reports from it (see the documentation for DOCLOG).
  3062.  
  3063.             DOCZ programs that log        DOCZ programs that do not log
  3064.  
  3065.                  DOC                      DOCHELP
  3066.                  DOCXL                    DOCLOG
  3067.                  DOCXLU                   DOCGET
  3068.                  DOCHBLD                  DOCLIS
  3069.                  DOCXLED                  DOCMAN
  3070.                                           DOCLEARN
  3071.  
  3072.  
  3073.  
  3074.  
  3075.  
  3076.  
  3077.  
  3078.  
  3079.  
  3080.  
  3081.  
  3082.  
  3083.  
  3084.  
  3085.  
  3086.                                          56
  3087.  
  3088.  
  3089.                                   SELECTING OPTIONS
  3090.  
  3091.  
  3092.             Alternate Directories and Version Control
  3093.  
  3094.             The Configuration File provides a means for bypassing the
  3095.             DOCZ paths naming conventions to make it easier to apply the
  3096.             DOCZ System to an already existing development environment.
  3097.             In addition, the means is provided to call almost any
  3098.             version control software, should the user not use CMS for
  3099.             VMS or SCCS for Unix System V.  Either or both of these
  3100.             options are selected using the U parameter in the
  3101.             Configuration File such that:
  3102.  
  3103.                  U,[library name],[path],[get command],[DEL]
  3104.  
  3105.             where
  3106.  
  3107.                  library name   may be an empty field or a library name.
  3108.                            If the library name is empty then ALL
  3109.                            libraries will be specified with the U
  3110.                            option.  If not empty, only the named library
  3111.                            will be specified with this U option.  Note
  3112.                            that multiple U records may be specified (up
  3113.                            to one per library).
  3114.  
  3115.                  path      may be an empty field or a path to the source
  3116.                            files, containing the token, "$FILE$," for
  3117.                            which the source file name will be
  3118.                            substituted at run time.  If path is an empty
  3119.                            string the default DOCZ path will be used
  3120.                            (using the DOCSRC symbol/logical name).  If
  3121.                            not empty, DOCZ will substitute the source
  3122.                            file name for $FILE$ in the string specified
  3123.                            in this field of the U record, to form a path
  3124.                            to the file.
  3125.  
  3126.                  get command    may be an empty field or a command to
  3127.                            execute for each module being documented.  If
  3128.                            get command is an empty field, the source
  3129.                            file will be used with the path
  3130.                            specification.  If not empty, the get command
  3131.                            will be executed with the following
  3132.                            substitutions being performed for each
  3133.                            module:
  3134.  
  3135.                            $FILE$              source file name
  3136.                            $LIB$               current library name
  3137.                            $MOD$               current module name
  3138.                            $DOCSRC$            the DOCSRC directory
  3139.                            $DOCREF$            the DOCREF directory
  3140.  
  3141.                            The get command may be either a command file
  3142.                            or program and must be specified
  3143.                            appropriately for the native command
  3144.                            interpreter to execute it.  The net result of
  3145.                            the get command must be to deliver the file
  3146.  
  3147.  
  3148.                                          57
  3149.  
  3150.  
  3151.                                   SELECTING OPTIONS
  3152.  
  3153.  
  3154.                            into the current (default) directory, with
  3155.                            the name specified as in the Documentation
  3156.                            Index File.  This is the same action as a
  3157.                            'get' using SCCS, a 'co' (check-out) using
  3158.                            RCS, or a 'fetch' using CMS.  This command
  3159.                            should not place a reservation on the file.
  3160.  
  3161.                  DEL       if present as the fifth field of a U record,
  3162.                            means that the file should be deleted from
  3163.                            the current directory when DOCZ is done with
  3164.                            it.  If the get command is a version control
  3165.                            "extraction," this option allows the removal
  3166.                            of the file when DOCZ processing is complete,
  3167.                            but this option is only valid in conjunction
  3168.                            with a get command (fourth field).
  3169.  
  3170.             Fields may be quoted with either the double quote character
  3171.             or the apostrophe if they require embedded commas,
  3172.             apostrophes, or double-quotes.
  3173.  
  3174.             For (an MSDOS) example:
  3175.  
  3176.                  U,USRLIB,\source\rcs\$FILE$,co \source\rcs\$FILE$,del
  3177.  
  3178.             where:
  3179.  
  3180.                  the source file can be located by substituting the
  3181.                  source file name as stored in the Documentation Index
  3182.                  File for the $FILE$ token in
  3183.                  "\common\source\rcs\$FILE$", and can be "gotten" or
  3184.                  "fetched" into the default directory by executing the
  3185.                  command line, "co \common\source\rcs\$FILE$".  When the
  3186.                  DOCZ program is done with the file, it will delete it,
  3187.                  as specified by del in the fifth field.
  3188.  
  3189.             Another (Unix) example:
  3190.  
  3191.                  U,,"/u/$LIB$/$FILE$,v",'co /u/$LIB$/$FILE$,v ""',del
  3192.  
  3193.             Since field number two is empty, all libraries will use this
  3194.             U record as a rule.  Note that both field three and four are
  3195.             quoted to preserve the comma that must be embedded in the
  3196.             file specification; field four is quoted with the apostrophe
  3197.             to preserve the double-quote that must be embedded in the
  3198.             field.  Some will recognize the get command in the previous
  3199.             two examples as a Berkeley Unix RCS "check out" command.
  3200.  
  3201.             Another (VMS) example:
  3202.  
  3203.                  U,CLIB,DUA0:[USER.COMMON.SOURCE]$FILE$,,
  3204.  
  3205.             Case is always ignored in the substitution parameters (i.e.
  3206.             $FILE$ and $file$ are equivalent), and in the U record
  3207.             identifier, the U character.
  3208.  
  3209.  
  3210.                                          58
  3211.  
  3212.  
  3213.                                   SELECTING OPTIONS
  3214.  
  3215.  
  3216.             MSDOS Username
  3217.  
  3218.             MSDOS does not have the capability to identify the owner of
  3219.             a process, but the DOCZ log contains the username in each
  3220.             entry.  Therefore, the DOCZ system has the option of
  3221.             providing a username in the DOCZ log if the environment
  3222.             variable, LOGNAME, is defined.  For example:
  3223.  
  3224.                  SET LOGNAME=todd
  3225.  
  3226.             will log the name "todd" as the username.  This may be
  3227.             especially useful on a PC network that uses a shared DOCZ
  3228.             log.
  3229.  
  3230.  
  3231.  
  3232.             Variable TAB Expansion
  3233.  
  3234.  
  3235.             TAB expansion to suite your tastes may be specified via the
  3236.             Configuration File using an o record, as in:
  3237.  
  3238.                  o,tabs,<tabstop>
  3239.  
  3240.             This will cause TABS to be expanded to tabstop, instead of
  3241.             eight (the default).
  3242.  
  3243.             For example:
  3244.  
  3245.                  o,tabs,3
  3246.  
  3247.             while force TABS to be expanded to three spaces.
  3248.  
  3249.             You will need this option in your configuration file to
  3250.             match TAB expansion that may be performed by your program
  3251.             editors.  The DOCZ System performs TAB expansion when
  3252.             producing documentation via the DOC program, and during
  3253.             generation of on-line help libraries via the DOCHBLD
  3254.             program.
  3255.  
  3256.  
  3257.  
  3258.  
  3259.  
  3260.  
  3261.  
  3262.  
  3263.  
  3264.  
  3265.  
  3266.  
  3267.  
  3268.  
  3269.  
  3270.  
  3271.  
  3272.                                          59
  3273.  
  3274.  
  3275.                                   SELECTING OPTIONS
  3276.  
  3277.  
  3278.             Specifying Command Line Options
  3279.  
  3280.  
  3281.  
  3282.             The [z_opt] command line option that is common to many of
  3283.             the DOCZ programs allows the overriding of DOCZ symbols and
  3284.             default directory specifications.  The [z_opt] option can be
  3285.             specified once or twice on the command line such that:
  3286.  
  3287.                  /z=docref=<alternate DOCREF directory>
  3288.  
  3289.             selects a new DOCREF directory, or if specified as an empty
  3290.             string as in:
  3291.  
  3292.                  /z=docref=
  3293.  
  3294.             Specifies that the DOCREF directory is the current
  3295.             directory.  Identical behavior is valid for:
  3296.  
  3297.                  /z=docsrc=<alternate DOCSRC directory>
  3298.  
  3299.             Case is ignored in the identifiers
  3300.  
  3301.  
  3302.  
  3303.  
  3304.  
  3305.  
  3306.  
  3307.  
  3308.  
  3309.  
  3310.  
  3311.  
  3312.  
  3313.  
  3314.  
  3315.  
  3316.  
  3317.  
  3318.  
  3319.  
  3320.  
  3321.  
  3322.  
  3323.  
  3324.  
  3325.  
  3326.  
  3327.  
  3328.  
  3329.  
  3330.  
  3331.  
  3332.  
  3333.  
  3334.                                          60
  3335.  
  3336.  
  3337.                                   SELECTING OPTIONS
  3338.  
  3339.  
  3340.             Option Summary
  3341.  
  3342.                  Options selected via the Configuration File.
  3343.  
  3344.  
  3345.             Transaction Logging
  3346.  
  3347.                  L,<error level list>,<number of days to keep entries>
  3348.  
  3349.             Printer Interface
  3350.  
  3351.                  P<feature key>,<value>
  3352.  
  3353.             Comment String Mask
  3354.  
  3355.                  E,<extension>,<comment string mask>
  3356.  
  3357.             Alternate Directories/Version Control
  3358.  
  3359.                  U,[library name],[directory],[get command],[DEL]
  3360.  
  3361.             Variable TABs
  3362.  
  3363.                  O,TABS,<tabstop>
  3364.  
  3365.             Symbol Override
  3366.  
  3367.                  /z=docref=<alternate DOCREF directory>
  3368.                  /z=docsrc=<alternate DOCSRC directory>
  3369.  
  3370.  
  3371.  
  3372.  
  3373.  
  3374.  
  3375.  
  3376.  
  3377.  
  3378.  
  3379.  
  3380.  
  3381.  
  3382.  
  3383.  
  3384.  
  3385.  
  3386.  
  3387.  
  3388.  
  3389.  
  3390.  
  3391.  
  3392.  
  3393.  
  3394.  
  3395.  
  3396.                                          61
  3397.  
  3398.  
  3399.                                  DOCUMENTATION INDEX
  3400.  
  3401.  
  3402.             Dumping the Documentation Index
  3403.  
  3404.             Should the need arise to examine the Documentation Index to
  3405.             determine what, and how many modules it contains; DOCXL with
  3406.             the following command line may be used:
  3407.  
  3408.                  DOCXL /d
  3409.  
  3410.             The entire contents of the Documentation Index will be
  3411.             dumped (in displayable format) to the current output device.
  3412.             For each module, the following is displayed:
  3413.  
  3414.                  Library name
  3415.                  Module name
  3416.                  Date of last modification (in the Documentation Index)
  3417.                  Time of last modification
  3418.                  Date of introduction
  3419.  
  3420.             If the contents of only one library is required, DOCXL also
  3421.             accepts a library name as its first argument, such that
  3422.  
  3423.                  DOCXL [library name] /d
  3424.  
  3425.             Only the modules for library name will be dumped.
  3426.  
  3427.  
  3428.  
  3429.             Displaying Modules Modified Since a Date
  3430.  
  3431.                  DOCXL /dm[=DATE]
  3432.                  DOCXL [library name] /dm[=DATE]
  3433.  
  3434.             All modules in the index that have been modified on or since
  3435.             the date specified, will be displayed, regardless of which
  3436.             library they are in.  If no date is specified, the current
  3437.             date is assumed.
  3438.  
  3439.  
  3440.  
  3441.             Displaying Modules Introduced Since a Date
  3442.  
  3443.                  DOCXL /di[=DATE]
  3444.                  DOCXL [library name] /di[=DATE]
  3445.  
  3446.             All modules in the index that have been introduced on or
  3447.             since the date specified, will be displayed, regardless of
  3448.             which library they are in.  If no date is specified, the
  3449.             current date is assumed.
  3450.  
  3451.  
  3452.  
  3453.  
  3454.  
  3455.  
  3456.  
  3457.  
  3458.                                          63
  3459.  
  3460.  
  3461.                                  DOCUMENTATION INDEX
  3462.  
  3463.  
  3464.             Deleting a Module
  3465.  
  3466.                  DOCXL <library name> <module name> /x
  3467.  
  3468.             The specified module name in the specified library name will
  3469.             be deleted from the Documentation Index.  The actual file
  3470.             that contains the module will not be affected, only the
  3471.             Documentation Index entry for the module.  The deletion must
  3472.             be interactively confirmed by the user.
  3473.  
  3474.  
  3475.  
  3476.             Searching for a Module
  3477.  
  3478.                  DOCXL <module name> /s[=<output file>]
  3479.  
  3480.             The index will be searched for the module name specified,
  3481.             and all matching names in all libraries will be displayed.
  3482.             If an optional output file is specified, it will be appended
  3483.             with the results of the search.  Wildcards are not allowed
  3484.             in module names.
  3485.  
  3486.  
  3487.  
  3488.             Feeding the Documentation Index to Other Programs
  3489.  
  3490.                  DOCXL <library name> /o[=L[M[F[D[T]]]]]
  3491.  
  3492.             The Documentation Index may be output as a text data file in
  3493.             a variety of formats that may be used as in input to other
  3494.             user-written programs using the DOCXL /o option.  The /o
  3495.             option specifies that all modules in a specified library are
  3496.             to be matched and the fields in the Documentation Index are
  3497.             to be output.  The output will be contained in a file named,
  3498.             library name.LST, in the current directory.  The /o option
  3499.             may be followed by an equals character and one or more
  3500.             additional specifiers in any order:
  3501.  
  3502.                  L    list library name
  3503.                  M    list module name
  3504.                  F    list file name
  3505.                  D    list date of update
  3506.                  T    list time of update
  3507.  
  3508.             Any combination of specifiers may be specified, and the
  3509.             output will contain the specified fields in the order you
  3510.             specified.  If no arguments are specified with /o, then all
  3511.             fields will be output in the default order.
  3512.  
  3513.             The output file, library_name.LST, is in the text data
  3514.             format.  You may wish to sort the file using your operating
  3515.             system SORT utility.
  3516.  
  3517.  
  3518.  
  3519.  
  3520.                                          64
  3521.  
  3522.  
  3523.                                  DOCUMENTATION INDEX
  3524.  
  3525.  
  3526.             Reorganizing Documentation Index Files
  3527.  
  3528.             In very large DOCZ installations it may become advantageous
  3529.             to provide more than one Documentation Index File.   For
  3530.             instance, you may have a requirement to maintain an
  3531.             experimental set of documentation in addition to a
  3532.             production set.  DOCXL can be used to create a second (or
  3533.             additional) Documentation Index File using the /e option.
  3534.             This option will extract all modules associated with the
  3535.             named library and place them in another Documentation Index
  3536.             File.  If the other index file already exists, it will add
  3537.             them to the file.
  3538.  
  3539.                  DOCXL <library name> <other Reference Directory> /e
  3540.  
  3541.             Only the directory specification is provided as the second
  3542.             argument, as the file name, DOCXL.DAT, is assumed.  Be sure
  3543.             to modify the required logical names or CLI symbols before
  3544.             running the DOC programs on the other index file.
  3545.  
  3546.             See the "DOCZ PROGRAM REFERENCE" section for more
  3547.             information on using the DOCXL program.
  3548.  
  3549.  
  3550.  
  3551.  
  3552.  
  3553.  
  3554.  
  3555.  
  3556.  
  3557.  
  3558.  
  3559.  
  3560.  
  3561.  
  3562.  
  3563.  
  3564.  
  3565.  
  3566.  
  3567.  
  3568.  
  3569.  
  3570.  
  3571.  
  3572.  
  3573.  
  3574.  
  3575.  
  3576.  
  3577.  
  3578.  
  3579.  
  3580.  
  3581.  
  3582.                                          65
  3583.  
  3584.  
  3585.                                DOCZ PROGRAM REFERENCE
  3586.  
  3587.  
  3588.             DOC
  3589.  
  3590.                  Documentation generation program
  3591.  
  3592.                  Arguments
  3593.  
  3594.                       DOC <library name> [z_opt]
  3595.  
  3596.                            Document an entire library
  3597.  
  3598.                       DOC <library name> <module name> [module name] ...
  3599.                            [z_opt]
  3600.  
  3601.                            Document a single module
  3602.  
  3603.                       DOC <library name> </m[=DATE]> [/s] [z_opt]
  3604.  
  3605.                            Document modules modified since DATE
  3606.  
  3607.                       DOC <library name> </r[=DATE]> [/s] [z_opt]
  3608.  
  3609.                            Document modules revised since DATE
  3610.  
  3611.                       DOC <library name> </f[=DATE]> [/s] [z_opt]
  3612.  
  3613.                            Document modules fixed since DATE
  3614.  
  3615.                       DOC <library name> </i[=DATE]> [/s] [z_opt]
  3616.  
  3617.                            Document modules introduced since DATE
  3618.  
  3619.                       DOC <library name> </s> [z_opt]
  3620.  
  3621.                            Produce a library summary
  3622.  
  3623.                  Returns
  3624.  
  3625.                       EXITNORMAL          If one or more modules match
  3626.                                           command line criteria.
  3627.  
  3628.                       EXITWARN            If no modules match command
  3629.                                      line criteria.
  3630.  
  3631.                       EXITBAD             If DOC cannot run.
  3632.  
  3633.  
  3634.  
  3635.  
  3636.  
  3637.  
  3638.  
  3639.  
  3640.  
  3641.  
  3642.  
  3643.  
  3644.                                          67
  3645.  
  3646.  
  3647.                                DOCZ PROGRAM REFERENCE
  3648.  
  3649.  
  3650.                  Errors
  3651.  
  3652.                       (1)  to library_name.ERR in the current directory
  3653.  
  3654.                            to the log, if logging is enabled                      (2)
  3655.  
  3656.                       (3)  to Standard Error
  3657.  
  3658.                  Output
  3659.  
  3660.                       to library_name.DOC in the current directory
  3661.  
  3662.             For an explanation of the [z_opt] command-line option, see
  3663.             "SELECTING OPTIONS:  Specifying Command Line Options."
  3664.  
  3665.             The /s on the command line with the fix, introduction,
  3666.             revision, and/or modification notice options produces a
  3667.             summary of the modules in the notice with output going to a
  3668.             file with the name:
  3669.  
  3670.                  <library_name>.MOD       modification notice
  3671.                  <library_name>.REV       revision notice
  3672.                  <library_name>.FIX       fix notice
  3673.                  <library_name>.INT       introduction notice
  3674.  
  3675.  
  3676.  
  3677.             DOC Examples
  3678.  
  3679.                  DOC clib
  3680.  
  3681.                       Produce the entire documentation set for the CLIB
  3682.                       library.
  3683.  
  3684.                  DOC clib strfunc
  3685.  
  3686.                       Produce the documentation for the module, STRFUNC,
  3687.                       contained in the library, CLIB.
  3688.  
  3689.                  DOC clib /i=8/10/82
  3690.  
  3691.                       Produce the documentation for all modules in the
  3692.                       CLIB library that have been introduced since
  3693.                       8/10/82.
  3694.  
  3695.                  DOC clib /f
  3696.  
  3697.                       Produce the documentation for all modules in the
  3698.                       CLIB library that were "fixed" today.
  3699.  
  3700.  
  3701.  
  3702.  
  3703.  
  3704.  
  3705.  
  3706.                                          68
  3707.  
  3708.  
  3709.                                DOCZ PROGRAM REFERENCE
  3710.  
  3711.  
  3712.              DOCXL
  3713.  
  3714.                  Documentation Index File update
  3715.  
  3716.                  Arguments
  3717.  
  3718.                       DOCXL <library name> <module name> <source file>
  3719.  
  3720.                            [z_opt]
  3721.  
  3722.                            Add/update a module
  3723.  
  3724.                       DOCXL [library name] /d [z_opt]
  3725.  
  3726.                            Display the Documentation Index
  3727.  
  3728.                       DOCXL [library name] /dm[=DATE] [z_opt]
  3729.  
  3730.                            Display modules modified since DATE
  3731.  
  3732.                       DOCXL [library name] /di[=DATE] [z_opt]
  3733.  
  3734.                            Display modules introduced since DATE
  3735.  
  3736.                       DOCXL [library name] /p [z_opt]
  3737.  
  3738.                            Print (output) the Documentation Index
  3739.  
  3740.                       DOCXL [library name] /pm[=DATE] [z_opt]
  3741.  
  3742.                            Print (output) modules modified since DATE
  3743.  
  3744.                       DOCXL [library name] /pi[=DATE] [z_opt]
  3745.  
  3746.                            Print (output) modules introduced since DATE
  3747.  
  3748.                       DOCXL <library name> <module name> /x [z_opt]
  3749.  
  3750.                            Delete a module (with confirmation)
  3751.  
  3752.                       DOCXL <library name> <module name> /xx [z_opt]
  3753.  
  3754.                            Delete a module (without confirmation)
  3755.  
  3756.                       DOCXL <module name> /s [z_opt]
  3757.  
  3758.                            Search for  a module
  3759.  
  3760.                       DOCXL <library name> /o[=L[M[F[D[T]]]]] [z_opt]
  3761.  
  3762.                            Output Documentation Index fields
  3763.  
  3764.  
  3765.  
  3766.  
  3767.  
  3768.                                          69
  3769.  
  3770.  
  3771.                                DOCZ PROGRAM REFERENCE
  3772.  
  3773.  
  3774.                  Returns
  3775.  
  3776.                       EXITNORMAL          If the Documentation Index
  3777.                                           File can be opened.
  3778.  
  3779.                       EXITBAD             If DOCXL cannot run.
  3780.  
  3781.                  Errors
  3782.  
  3783.                            to the log, if logging is enabled                      (1)
  3784.  
  3785.                            to Standard Error                      (2)
  3786.  
  3787.             The DOCXL program is used to build the Documentation Index
  3788.             File for all modules to be documented in the DOCZ System.
  3789.             The /d and /p options respectively allow displaying and
  3790.             printing of the Index for one or all libraries.  The DOCXL
  3791.             program does not use any files containing documentation
  3792.             headers:  it only manipulates the Documentation Index File.
  3793.             Whenever records in the Documentation Index File must be
  3794.             locked for an inordinate length of time (a few seconds), a
  3795.             message will be displayed on the user's terminal warning of
  3796.             the delay (VMS version only).
  3797.  
  3798.             More information on the usage of the DOCXL program is
  3799.             contained in the section,"DOCUMENTATION INDEX."
  3800.  
  3801.             For an explanation of the [z_opt] command-line option, see
  3802.             "SELECTING OPTIONS:  Specifying Command Line Options."
  3803.  
  3804.  
  3805.  
  3806.  
  3807.  
  3808.  
  3809.  
  3810.  
  3811.  
  3812.  
  3813.  
  3814.  
  3815.  
  3816.  
  3817.  
  3818.  
  3819.  
  3820.  
  3821.  
  3822.  
  3823.  
  3824.  
  3825.  
  3826.  
  3827.  
  3828.  
  3829.  
  3830.                                          70
  3831.  
  3832.  
  3833.                                DOCZ PROGRAM REFERENCE
  3834.  
  3835.  
  3836.             DOCXL Examples
  3837.  
  3838.                  DOCXL clib strfunc strfunc.asm
  3839.  
  3840.                       Add the STRFUNC module, contained in the
  3841.                       STRFUNC.ASM file, to the CLIB library.
  3842.  
  3843.                  DOCXL /p
  3844.  
  3845.                       Output a printable image of the contents of the
  3846.                       Documentation Index to the file, DOCXL.LST.
  3847.  
  3848.                  DOCXL clib /o=ml
  3849.  
  3850.                       Output module names and library name (in that
  3851.                       order) to CLIB.LST.
  3852.  
  3853.                  DOCXL paslib /o
  3854.  
  3855.                       Output all module information to PASLIB.LST.
  3856.  
  3857.                  DOCXL forlib /dm
  3858.  
  3859.                       Display all modules modified today.
  3860.  
  3861.                  DOCXL ulib /pi=8/2/86
  3862.  
  3863.                       Output all modules introduced since 8/2/86 to
  3864.                       ULIB.LST.
  3865.  
  3866.  
  3867.  
  3868.  
  3869.  
  3870.  
  3871.  
  3872.  
  3873.  
  3874.  
  3875.  
  3876.  
  3877.  
  3878.  
  3879.  
  3880.  
  3881.  
  3882.  
  3883.  
  3884.  
  3885.  
  3886.  
  3887.  
  3888.  
  3889.  
  3890.  
  3891.  
  3892.                                          71
  3893.  
  3894.  
  3895.                                DOCZ PROGRAM REFERENCE
  3896.  
  3897.  
  3898.             DOCXLU
  3899.  
  3900.                  Documentation Index File utility
  3901.  
  3902.                  Arguments
  3903.  
  3904.                       DOCXLU /e <Ref. Directory> <library>...[library]
  3905.  
  3906.                            [z_opt]
  3907.  
  3908.                            Extract library for another Documentation
  3909.  
  3910.                            Index File
  3911.  
  3912.                       DOCXLU /r [z_opt]
  3913.  
  3914.                            Repair/rebuild the Documentation Index
  3915.  
  3916.                       DOCXLU /ao=<output file> [library]...[library]
  3917.  
  3918.                            [z_opt]
  3919.  
  3920.                            Output an ASCII transport file for the
  3921.  
  3922.                            Documentation Index
  3923.  
  3924.                       DOCXLU /ai=<input file> [z_opt]
  3925.  
  3926.                            Read an ASCII transport file
  3927.  
  3928.                       DOCXLU /s[=<output file>] [z_opt]
  3929.  
  3930.                            Display DOCZ System statistics
  3931.  
  3932.                       DOCXLU /v[=<output file>] [z_opt]
  3933.  
  3934.                            Verify presence of all source files
  3935.  
  3936.                       DOCXLU /c[=<output file>] [z_opt]
  3937.  
  3938.                            Check for the presence of rogue files
  3939.  
  3940.                  Returns
  3941.  
  3942.                       EXITNORMAL          If the Documentation Index
  3943.                                      File can be opened.
  3944.  
  3945.                       EXITBAD             If DOCXLU cannot run.
  3946.  
  3947.                  Errors
  3948.  
  3949.                       (1)  to the log, if logging is enabled
  3950.  
  3951.                       (2)  to Standard Error
  3952.  
  3953.  
  3954.                                          72
  3955.  
  3956.  
  3957.                                DOCZ PROGRAM REFERENCE
  3958.  
  3959.  
  3960.             The DOCXLU program provides a variety of utility functions
  3961.             that allow moving your DOCZ system between the various
  3962.             operating systems on which it runs.  It also helps to
  3963.             reorganize your documentation libraries by providing a means
  3964.             to create several Documentation Index Files.
  3965.  
  3966.             The /e (extract) option is provided to allow the extraction
  3967.             of modules associated with one library to be inserted into
  3968.             another Documentation Index File.  The reference directory
  3969.             specifies the directory name containing the Documentation
  3970.             Index File to receive the new entries.  The library argument
  3971.             specifies one or more libraries to "extract."
  3972.  
  3973.             The /r (repair/rebuild) option checks the integrity of each
  3974.             field in the Index and extracts records marked for deletion.
  3975.  
  3976.             The /ao (output) option will produce an ASCII transport
  3977.             file, specified by output file, that can be read using the
  3978.             /ai (input) option on another system.  This has the affect
  3979.             of duplicating identical DOCZ libraries on more than one
  3980.             system, and those systems need not have the same hardware
  3981.             architecture.
  3982.  
  3983.             For the /ao option, If no library names are specified, all
  3984.             entries will be output.  If any library names are specified,
  3985.             then only entries for those libraries will be output.
  3986.  
  3987.             The /ai option is provided to read an ASCII transport file
  3988.             created by the /ao option of DOCXLU.  The entries gleaned
  3989.             from the transport file will be merged with the current
  3990.             Documentation Index File.  If an entry is new, it will be
  3991.             added.  If the entry already exists (module and library name
  3992.             are the same), it will replace the already existing entry.
  3993.  
  3994.             File specifications generated under one operating system may
  3995.             not be valid under another operating system.  If the source
  3996.             file name contains a directory specification, you may have
  3997.             to edit it in the ASCII transport file.  The UNIX version of
  3998.             DOCXLU will warn of this condition.
  3999.  
  4000.             The /v option initiates a check for the presence of source
  4001.             files for all modules named in the Documentation Index.  An
  4002.             optional output file may also be specified, if a print file
  4003.             is required instead of a display.  Note that this option
  4004.             does not cause the source files to be validated for properly
  4005.             formatted documentation headers.
  4006.  
  4007.             The /c option checks the default source location for the
  4008.             presence of rogue files (those that cannot be accounted for
  4009.             in the Documentation Index File).  The directory searched is
  4010.             the derivation of DOCSRC and the library name (the standard
  4011.             DOCZ default).
  4012.  
  4013.  
  4014.  
  4015.  
  4016.                                          73
  4017.  
  4018.  
  4019.                                DOCZ PROGRAM REFERENCE
  4020.  
  4021.  
  4022.             The /s option generates a display of DOCZ System statistics.
  4023.             This option is especially useful for analyzing the entire
  4024.             DOCZ System environment which can be especially useful when
  4025.             error conditions occur.  The /s option may be followed by an
  4026.             optional output file specification into which the statistics
  4027.             will be written instead of displayed.  The following
  4028.             statistics are displayed:
  4029.  
  4030.                  S       /no if the VMS version of DOCZ links to CMS                      Yes
  4031.  
  4032.                  S    Total number of entries in the Documentation Index
  4033.                       File
  4034.  
  4035.                  S    Number of deleted entries in the Documentation
  4036.                       Index File
  4037.  
  4038.                  S    The directory path to the Default Source Directory
  4039.  
  4040.                  S    The directory path to the Documentation Reference
  4041.                       Directory
  4042.  
  4043.                  S    Yes/no if a Configuration File can be found
  4044.  
  4045.                  S    Comment String Masks (if specified in the
  4046.                       Configuration File)
  4047.  
  4048.                  S    Comment String Masks for file extension names (if
  4049.                       specified in the Configuration File)
  4050.  
  4051.                  S    Yes/no if error logging is enabled
  4052.  
  4053.                  S    Error logging levels that are enabled
  4054.  
  4055.                  S    The number of days error log entries are kept
  4056.  
  4057.                  S    The age of the oldest entry in the error log
  4058.  
  4059.                  S    The total number of entries in the error log
  4060.  
  4061.                  S    Any print output modification parameters (PSET
  4062.                       tokens)
  4063.  
  4064.                  S    Any PSET initialization and de-initialization
  4065.                       parameters specified
  4066.  
  4067.                  S    The system date format
  4068.  
  4069.                  S    Yes/no if an on-line help library has been
  4070.                       generated and is available
  4071.  
  4072.                  S    The number of modules in the on-line help library
  4073.  
  4074.                  S    Yes/no if MSDOS network sharing is enabled (MSDOS
  4075.                       version only)
  4076.  
  4077.  
  4078.                                          74
  4079.  
  4080.  
  4081.                                DOCZ PROGRAM REFERENCE
  4082.  
  4083.  
  4084.  
  4085.                  S    Yes/no if the SORT utility is found on the system
  4086.                       (it is needed by the DOC program).  VMS and UNIX
  4087.                       require the system sort, and MSDOS requires SSORT
  4088.                       provided by the DOCZ System.
  4089.  
  4090.                  S    The names of all libraries specified in the
  4091.                       Documentation Index and the number of modules in
  4092.                       each library
  4093.  
  4094.                  S    Default source location override (if any) in the
  4095.                       Configuration File
  4096.  
  4097.                  S    Version control GET commands (if any) in the
  4098.                       Configuration File
  4099.  
  4100.             For an explanation of the [z_opt] command-line option, see
  4101.             "SELECTING OPTIONS:  Specifying Command Line Options."
  4102.  
  4103.  
  4104.  
  4105.  
  4106.  
  4107.  
  4108.  
  4109.  
  4110.  
  4111.  
  4112.  
  4113.  
  4114.  
  4115.  
  4116.  
  4117.  
  4118.  
  4119.  
  4120.  
  4121.  
  4122.  
  4123.  
  4124.  
  4125.  
  4126.  
  4127.  
  4128.  
  4129.  
  4130.  
  4131.  
  4132.  
  4133.  
  4134.  
  4135.  
  4136.  
  4137.  
  4138.  
  4139.  
  4140.                                          75
  4141.  
  4142.  
  4143.                                DOCZ PROGRAM REFERENCE
  4144.  
  4145.  
  4146.             DOCXLU Examples
  4147.  
  4148.             Suppose a DOCZ library existed on a Unix system, but an
  4149.             administrator wished to provide a duplicate DOCZ system on
  4150.             an MSDOS LAN.  The administrator could use the /ao option,
  4151.             as in:
  4152.  
  4153.                  docxlu /ao=tomsdos.txt
  4154.  
  4155.             to produce and ASCII transport file on the Unix system named
  4156.             tomsdos.txt.  The administrator would then copy the file (in
  4157.             text mode) to the MSDOS network, set up the MSDOS
  4158.             environment for the DOCZ system, and copy all the source
  4159.             files containing modules to the MSDOS network.  Then use the
  4160.             /ai option, as in:
  4161.  
  4162.                  docxlu /ai=tomsdos.txt
  4163.  
  4164.             to build a Documentation Index File on the MSDOS network.
  4165.             The source files may then be copied to the requisite sub-
  4166.             directories of DOCSRC, if documentation needs to be built on
  4167.             that platform.
  4168.  
  4169.             The DOCXLU /e option strips entries out of the current
  4170.             Documentation Index File and places them in another
  4171.             Documentation Index File.  This feature could be used to
  4172.             isolate documentation for different software releases, both
  4173.             existing on the same system:  the environment variables
  4174.             would have to be appropriately modified before accessing the
  4175.             desired DOCZ library.
  4176.  
  4177.  
  4178.  
  4179.  
  4180.  
  4181.  
  4182.  
  4183.  
  4184.  
  4185.  
  4186.  
  4187.  
  4188.  
  4189.  
  4190.  
  4191.  
  4192.  
  4193.  
  4194.  
  4195.  
  4196.  
  4197.  
  4198.  
  4199.  
  4200.  
  4201.  
  4202.                                          76
  4203.  
  4204.  
  4205.                                DOCZ PROGRAM REFERENCE
  4206.  
  4207.  
  4208.             DOCHBLD
  4209.  
  4210.                  Generate a documentation help library
  4211.  
  4212.                  Arguments
  4213.  
  4214.                       DOCHBLD [library] [library] ... [/opt] [/opt]
  4215.  
  4216.                            options:
  4217.                       /h                            update the on-line
  4218.                                                     help library
  4219.                       /v                            VMS help library
  4220.                                                     format
  4221.                       /ao=<filename>                ASCII transport
  4222.                                                     output
  4223.                       /ai=<filename>[,filename,...] ASCII transport
  4224.                                                     input
  4225.                       /z=docref=<alternate DOCREF directory>
  4226.                       /z=docsrc=<alternate DOCSRC directory>
  4227.  
  4228.                  Returns
  4229.  
  4230.                       EXITNORMAL     If one or more modules are found
  4231.                                      and added to the help library
  4232.  
  4233.                       EXITWARN       If zero modules are found,  or any
  4234.                                      other abnormal condition
  4235.  
  4236.                       EXITBAD        If any fatal errors occur
  4237.  
  4238.                  Errors
  4239.  
  4240.                       (1)  to the log, if logging is enabled
  4241.  
  4242.                       (2)  to Standard Error
  4243.  
  4244.             DOCHBLD builds an on-line help library for the modules in
  4245.             the Documentation Index File.  It also can build a help
  4246.             library from the modules on another computer using "ASCII
  4247.             transport files."  If DOCHBLD is invoked with the /h option,
  4248.             a help library will be built for all modules in the
  4249.             Documentation Index File.  The output file, DOCHELP.HLP, is
  4250.             stored in the Reference Directory.  This file may then be
  4251.             used by the DOCHELP utility to provide on-line documentation
  4252.             and a program editor interface.
  4253.  
  4254.             An alternate format is available in the VMS version (using
  4255.             the /v option) and this file may then be processed by the
  4256.             VMS LIBRARY utility to produce a text library in a format
  4257.             that can be read by the VMS on-line HELP facility (should
  4258.             you choose to use VMS HELP instead of DOCHELP).  The output
  4259.             file will be "DOCHELP.VLP" in the current directory.
  4260.  
  4261.  
  4262.  
  4263.  
  4264.                                          77
  4265.  
  4266.  
  4267.                                DOCZ PROGRAM REFERENCE
  4268.  
  4269.  
  4270.             The /ao option produces an "ASCII transport file," with the
  4271.             specified filename, that may be moved to another computer
  4272.             and processed by the DOCHBLD utility (using the /ai option)
  4273.             to produce a help library on the other computer.  This
  4274.             feature allows the transportation of a help library between
  4275.             disparate computer architectures.  The /ao option excludes
  4276.             the use of the /v option.
  4277.  
  4278.             The library argument is optional and, if any libraries are
  4279.             named on the command line, only the named libraries will be
  4280.             included in the help library.  The specification of library
  4281.             names are in compatible with the /ai option.  If no library
  4282.             names are specified on the command line, DOCHBLD will
  4283.             generate a help library for all libraries.  It is good
  4284.             practice to periodically update the DOCZ Help File by
  4285.             running DOCHBLD, perhaps weekly if your libraries change
  4286.             often.
  4287.  
  4288.             The /h (update help library) option may be specified alone,
  4289.             or in conjunction with the /ao option.  This option
  4290.             signifies that the local on-line help library should be
  4291.             updated.  The /h option is provided so that (with it left
  4292.             off the command-line) Transport Files can be generated for a
  4293.             limited number of libraries.
  4294.  
  4295.             For an explanation of the [z_opt] command-line option, see
  4296.             "SELECTING OPTIONS:  Specifying Command Line Options."
  4297.  
  4298.             A VMS command file, such as the following, generates an on-
  4299.             line help library for all modules documented in DOCZ when
  4300.             DOCHBLD is used with the /v option.
  4301.  
  4302.                  $! run the DOCHBLD utility
  4303.                  $ DOCHBLD /v
  4304.                  $! run the LIBRARY utility to generate a VMS help file
  4305.                  $ LIBRARY/HELP/CREATE DOCHELP.VLP DOCHELP
  4306.                  $! allow the VMS HELP command to find the help library
  4307.                  $ DEFINE/SYSTEM HLP$LIBRARY -
  4308.                       'F$ENVIRONMENT("DEFAULT")'DOCHELP
  4309.  
  4310.             Run the VMS HELP utility, and check for the names of the
  4311.             modules contained in the DOCZ System.
  4312.  
  4313.  
  4314.  
  4315.  
  4316.  
  4317.  
  4318.  
  4319.  
  4320.  
  4321.  
  4322.  
  4323.  
  4324.  
  4325.  
  4326.                                          78
  4327.  
  4328.  
  4329.                                DOCZ PROGRAM REFERENCE
  4330.  
  4331.  
  4332.             DOCHELP
  4333.  
  4334.                  Produce on line documentation help
  4335.  
  4336.                  Arguments
  4337.  
  4338.                       DOCHELP                       (interactive mode)
  4339.  
  4340.                            or
  4341.  
  4342.                       DOCHELP <module name> [/opt]       (command line
  4343.                       mode)
  4344.  
  4345.                  Returns
  4346.  
  4347.                       Nothing
  4348.  
  4349.                  Errors
  4350.  
  4351.                       to Standard Error
  4352.  
  4353.             The DOCHELP utility reads the help file generated by the
  4354.             DOCHBLD utility to provide on-line documentation for
  4355.             modules.  In the interactive mode, module names are accepted
  4356.             at the DOCHELP> prompt until [RETURN] alone is pressed.  In
  4357.             command line mode, DOCHELP is invoked with the name of a
  4358.             module on the command line.  The following information is
  4359.             stored in the help file and displayed by DOCHELP when a
  4360.             valid module name is entered:
  4361.  
  4362.                  Module name
  4363.                  Library name
  4364.                  Application keyword
  4365.                  Short description
  4366.                  Return value
  4367.                  Argument description
  4368.  
  4369.             The module name may contain the '*' wildcard which will be
  4370.             used to match one or more module names in the help library.
  4371.             The '*' is specified as a trailing character in the module
  4372.             name specification.  In this display mode, only module names
  4373.             are displayed.  For example, if "c*" is entered, all module
  4374.             names beginning with "c" are displayed.  If "*" is entered,
  4375.             all module names are displayed.  The screen will be "frozen"
  4376.             to prevent it from scrolling, and any key pressed will
  4377.             continue the display.
  4378.  
  4379.             A question mark, '?', in place of a module name displays the
  4380.             DOCHELP banner with a list of usage prompts.
  4381.  
  4382.             A description search capability is available in the
  4383.             interactive mode.  One or more keywords may be entered at
  4384.             the DOCHELP> command prompt, preceded by a slash (/)
  4385.             character.
  4386.  
  4387.  
  4388.                                          79
  4389.  
  4390.  
  4391.                                DOCZ PROGRAM REFERENCE
  4392.  
  4393.  
  4394.             In the following example:
  4395.  
  4396.                  DOCHELP> /lower case
  4397.  
  4398.             will search all module descriptions (without regard for
  4399.             case) and will display those containing the string, "lower
  4400.             case."  The module name and library name are also displayed.
  4401.             This feature allows easy location of modules by description.
  4402.  
  4403.             If /arg as added as an option in command line mode, only the
  4404.             arguments for the module are displayed.  This option is
  4405.             available primarily to provide a means for producing
  4406.             function prototypes for editors:  the "DOCHELP <module name>
  4407.             /arg" output can be redirected to a file and the file and
  4408.             then read by the program editor.
  4409.  
  4410.             There are two mechanisms supplied with the DOCZ System to
  4411.             extract a modules' arguments (or calling prototype) while
  4412.             you are in an editing session:
  4413.  
  4414.                  (1)  In the UNIX version, DOCHELP can be used to insert
  4415.                       a function prototype into the current document
  4416.                       under edit by entering, in command mode in the vi
  4417.                       editor:
  4418.  
  4419.                            :r !dochelp <module name> -arg
  4420.  
  4421.                       The function prototype for the module name will be
  4422.                       inserted into the text at the current cursor
  4423.                       position.
  4424.  
  4425.                  (2)  In the MSDOS version, if you are using the
  4426.                       BRIEF editor, The DOCZ distribution includes
  4427.                       the source code for a BRIEF macro.  Licensed
  4428.                       BRIEF users only need compile the macro,
  4429.                       DOCHELP.M, and place the compiled macro in
  4430.                       their BRIEF macro directory.  The macro is
  4431.                       invoked from the BRIEF command mode by
  4432.                       entering:
  4433.  
  4434.                            dochelp <module name>
  4435.  
  4436.                       The function prototype for the module name will be
  4437.                       inserted into the text at the current cursor
  4438.                       position.
  4439.  
  4440.  
  4441.  
  4442.  
  4443.  
  4444.  
  4445.  
  4446.  
  4447.  
  4448.  
  4449.  
  4450.                                          80
  4451.  
  4452.  
  4453.                                DOCZ PROGRAM REFERENCE
  4454.  
  4455.  
  4456.             DOCXLED
  4457.  
  4458.                  Examine/search/modify the Documentation Index File
  4459.  
  4460.                  Arguments
  4461.  
  4462.                       DOCXLED [z_opt]
  4463.  
  4464.                  Returns
  4465.  
  4466.                       Nothing
  4467.  
  4468.                  Errors
  4469.  
  4470.                            to the log, if logging is enabled                      (1)
  4471.  
  4472.                            to Standard Error                      (2)
  4473.  
  4474.             The DOCXLED utility provides the means to examine and modify
  4475.             records in the Documentation Index File.  Each of the
  4476.             following fields in each record may be modified using the
  4477.             primitive screen editor in the DOCXLED utility:
  4478.  
  4479.                  Library name
  4480.                  Module name
  4481.                  Source file specification
  4482.                  Last modification time
  4483.                  Last modification date
  4484.                  Introduction date
  4485.                  Delete/undelete record
  4486.  
  4487.  
  4488.  
  4489.  
  4490.  
  4491.  
  4492.  
  4493.  
  4494.  
  4495.  
  4496.  
  4497.  
  4498.  
  4499.  
  4500.  
  4501.  
  4502.  
  4503.  
  4504.  
  4505.  
  4506.  
  4507.  
  4508.  
  4509.  
  4510.  
  4511.  
  4512.                                          81
  4513.  
  4514.  
  4515.                                DOCZ PROGRAM REFERENCE
  4516.  
  4517.  
  4518.             The following is a display produced by the DOCXLED program:
  4519.  
  4520.                  **************************************************
  4521.  
  4522.                        Entry Number: 0
  4523.                        Library name: DOCZ
  4524.                         Module name: DOC
  4525.                            Location: doc.c
  4526.                   Modification date: 12/11/89
  4527.                   Modification time: 22:15:50
  4528.                   Introduction date: 07/07/87
  4529.                      Deleted record? N
  4530.  
  4531.                  Records=566, Search direction=FORWARD, Search library=*
  4532.  
  4533.                  **************************************************
  4534.  
  4535.                  +) Next, -) Previous, B) Begin, Z) End, S) Set Rec. No.
  4536.                  F) Find, Q) Quit, D) Direction, N) Name library, E)
  4537.                  Edit, U) Update
  4538.                  Press choice:
  4539.  
  4540.             When the DOCXLED program is run, the first entry in the
  4541.             Documentation Index File is displayed, and the user is
  4542.             placed in the command mode.  Any entry that is displayed on
  4543.             the screen may be edited by pressing E, which places the
  4544.             user in the editing mode.
  4545.  
  4546.             For an explanation of the [z_opt] command-line option, see
  4547.             "SELECTING OPTIONS:  Specifying Command Line Options."
  4548.  
  4549.  
  4550.  
  4551.  
  4552.  
  4553.  
  4554.  
  4555.  
  4556.  
  4557.  
  4558.  
  4559.  
  4560.  
  4561.  
  4562.  
  4563.  
  4564.  
  4565.  
  4566.  
  4567.  
  4568.  
  4569.  
  4570.  
  4571.  
  4572.  
  4573.  
  4574.                                          82
  4575.  
  4576.  
  4577.                                DOCZ PROGRAM REFERENCE
  4578.  
  4579.  
  4580.             In the command mode, you may select any of the following
  4581.             options:
  4582.  
  4583.                  Q    Quit DOCXLED utility
  4584.  
  4585.                  +    Display next entry
  4586.  
  4587.                  -    Display previous entry
  4588.  
  4589.                  B    Display first (beginning) entry in file
  4590.  
  4591.                  Z    Display last entry in file
  4592.  
  4593.                  F    Find a module name you will be prompted for.
  4594.                       During the search, an abort key (^\) can abort the
  4595.                       search.
  4596.  
  4597.                  D    Change the direction of search
  4598.  
  4599.                  N    Name a new library.  '*' signifies that all
  4600.                       library names will be included in the search.
  4601.  
  4602.                  E    Enter editing mode on the current record
  4603.  
  4604.                  U    Update an edited record
  4605.  
  4606.                  S      t the current record number                      Se
  4607.  
  4608.             While in the editing mode, the following function keys will
  4609.             be recognized:
  4610.  
  4611.                  Key                 Action
  4612.  
  4613.                  Control-E           Previous field
  4614.                  RETURN              Next field
  4615.                  Control-K           Abort
  4616.                  Control-Z           Exit
  4617.                  BACKSPACE, DELETE   Delete character
  4618.                  Control-U           Clear current field
  4619.  
  4620.             A terminal independent primitive editor is utilized in the
  4621.             editing mode to allow modifications to the Documentation
  4622.             Index File records.  When the cursor is in a field, the
  4623.             maximum width of the field will be displayed filled with the
  4624.             underscore character.
  4625.  
  4626.             When editing mode is exited to command mode, the entry will
  4627.             be updated in the Documentation Index File if you press U.
  4628.             If you move to another entry without pressing U, your edits
  4629.             will be lost.
  4630.  
  4631.             DOCXLED does not allow new entries, it only allows
  4632.             modification of entries previously added by DOCXL.  It does,
  4633.             however, allow the marking of an entry for deletion.  A
  4634.  
  4635.  
  4636.                                          83
  4637.  
  4638.  
  4639.                                DOCZ PROGRAM REFERENCE
  4640.  
  4641.  
  4642.             record marked for deletion may be overwritten by the next
  4643.             new entry applied to the Documentation Index File, or will
  4644.             be removed entirely by the "rebuild" option of DOCXL.
  4645.  
  4646.             Specifying a library name with the N option causes
  4647.             subsequent searches to scan only for the  library name you
  4648.             specify.  To return to a global search, select N, and enter
  4649.             *.
  4650.  
  4651.  
  4652.  
  4653.  
  4654.  
  4655.  
  4656.  
  4657.  
  4658.  
  4659.  
  4660.  
  4661.  
  4662.  
  4663.  
  4664.  
  4665.  
  4666.  
  4667.  
  4668.  
  4669.  
  4670.  
  4671.  
  4672.  
  4673.  
  4674.  
  4675.  
  4676.  
  4677.  
  4678.  
  4679.  
  4680.  
  4681.  
  4682.  
  4683.  
  4684.  
  4685.  
  4686.  
  4687.  
  4688.  
  4689.  
  4690.  
  4691.  
  4692.  
  4693.  
  4694.  
  4695.  
  4696.  
  4697.  
  4698.                                          84
  4699.  
  4700.  
  4701.                                DOCZ PROGRAM REFERENCE
  4702.  
  4703.  
  4704.             DOCGET
  4705.  
  4706.                  Extract a field from a documentation header
  4707.  
  4708.                  Arguments
  4709.  
  4710.                       DOCGET <module> <source> <parameter> [/o=<output>]
  4711.  
  4712.                  Returns
  4713.  
  4714.                       Nothing
  4715.  
  4716.                  Errors
  4717.  
  4718.                       to Standard Error
  4719.  
  4720.             The DOCGET utility extracts a single field for a module from
  4721.             a documentation header specified by the DOCZ header
  4722.             parameter.  Only the first 3 characters of parameter will be
  4723.             used, and case is ignored.  The module name must be
  4724.             specified as multiple modules may be contained in a single
  4725.             source file.  If an optional output file is specified, it
  4726.             will be appended to.
  4727.  
  4728.             This utility is provided to facilitate automation of the
  4729.             DOCZ System.
  4730.  
  4731.  
  4732.  
  4733.  
  4734.  
  4735.  
  4736.  
  4737.  
  4738.  
  4739.  
  4740.  
  4741.  
  4742.  
  4743.  
  4744.  
  4745.  
  4746.  
  4747.  
  4748.  
  4749.  
  4750.  
  4751.  
  4752.  
  4753.  
  4754.  
  4755.  
  4756.  
  4757.  
  4758.  
  4759.  
  4760.                                          85
  4761.  
  4762.  
  4763.                                DOCZ PROGRAM REFERENCE
  4764.  
  4765.  
  4766.             DOCLIS
  4767.  
  4768.                  Find all DOCZ modules in a source file
  4769.  
  4770.                  Arguments
  4771.  
  4772.                  DOCLIS <a.f.n.> [/o=<output file>]
  4773.  
  4774.                  DOCLIS <a.f.n.> [z_opt] /c[=<command> [arg 4] [arg 5]
  4775.  
  4776.                  ...
  4777.  
  4778.                  DOCLIS <a.f.n.> [z_opt] /e=<command> [arg 4] [arg 5]
  4779.  
  4780.                  ...
  4781.  
  4782.                  Returns
  4783.  
  4784.                       Nothing
  4785.  
  4786.                  Errors
  4787.  
  4788.                       to Standard Error
  4789.  
  4790.             The DOCLIS utility scans source file(s) for the DOCZ
  4791.             header(s) it contains and extracts the library name, module
  4792.             name(s), file name, and supported platform names.  The
  4793.             ambiguous file name, a.f.n., may be matched to zero or more
  4794.             files in one or more directories.  The output is normally
  4795.             sent to the screen, but a file may be selected for output by
  4796.             specifying the file name with the /o option.
  4797.  
  4798.             UNIX version note:  be sure to quote ambiguous file names
  4799.             containing wildcards, so that the DOCLIS program will
  4800.             perform the wildcard expansion instead of the Shell.
  4801.  
  4802.             If the /c option is specified, the DOCLIS utility runs DOCXL
  4803.             for every module found in the specified source file(s), thus
  4804.             automatically updating the Documentation Index File.  A
  4805.             post-processing command may also be specified, with the /c
  4806.             option switch:  the command may be a command file or program
  4807.             to which will be passed (1) the library name, (2) the module
  4808.             name, (3) the source file name, and any additional arguments
  4809.             on the DOCLIS command line.  The /e option is an alternate
  4810.             form of the /c option, specifying that you do not wish to
  4811.             run DOCXL for each module; only the specified command.
  4812.  
  4813.             You may wish to use the post-processing command to update
  4814.             your version control library with a module added to the
  4815.             Documentation Index File, or to relocate the file to the
  4816.             DOCZ source directories.  The EXAMPLES section contain
  4817.             command files illustrating this usage.
  4818.  
  4819.  
  4820.  
  4821.  
  4822.                                          86
  4823.  
  4824.  
  4825.                                DOCZ PROGRAM REFERENCE
  4826.  
  4827.  
  4828.             For an explanation of the [z_opt] command-line option, see
  4829.             "SELECTING OPTIONS:  Specifying Command Line Options."
  4830.  
  4831.  
  4832.  
  4833.  
  4834.  
  4835.  
  4836.  
  4837.  
  4838.  
  4839.  
  4840.  
  4841.  
  4842.  
  4843.  
  4844.  
  4845.  
  4846.  
  4847.  
  4848.  
  4849.  
  4850.  
  4851.  
  4852.  
  4853.  
  4854.  
  4855.  
  4856.  
  4857.  
  4858.  
  4859.  
  4860.  
  4861.  
  4862.  
  4863.  
  4864.  
  4865.  
  4866.  
  4867.  
  4868.  
  4869.  
  4870.  
  4871.  
  4872.  
  4873.  
  4874.  
  4875.  
  4876.  
  4877.  
  4878.  
  4879.  
  4880.  
  4881.  
  4882.  
  4883.  
  4884.                                          87
  4885.  
  4886.  
  4887.                                DOCZ PROGRAM REFERENCE
  4888.  
  4889.  
  4890.             DOCLOG
  4891.  
  4892.                  Examine/Search the DOCZ transaction log file
  4893.  
  4894.                  Arguments
  4895.  
  4896.                       DOCLOG [z_opt]
  4897.  
  4898.                  Returns
  4899.  
  4900.                       Nothing
  4901.  
  4902.                  Errors
  4903.  
  4904.                       to Standard Error
  4905.  
  4906.             The DOCLOG program allows scanning of the DOCZ
  4907.             transaction/error log.  When DOCLOG is invoked, the last
  4908.             entry in the log will be displayed initially.  The following
  4909.             commands may be used to navigate through the log:
  4910.  
  4911.                  +    forward   display the next entry
  4912.                  -    reverse   display the previous entry
  4913.                  Q    Quit      quit the DOCLOG program
  4914.                  L    Last      display the last entry
  4915.                  F    First     display the first entry
  4916.                  N    Ent. No.  display the entry number prompted for
  4917.                  R    Report    generate a report
  4918.  
  4919.             The following is an example of a display for a log entry:
  4920.  
  4921.                  Entry Number: 2013/3259
  4922.                       Program: DOCXL
  4923.                     Date/Time: Thu Jan 24 21:44:55 1989 (6 days ago)
  4924.                       User ID: toolz:todd
  4925.                    Process ID: 6231
  4926.                   Error Level: WARNING
  4927.                       Message: DOCHLP not found
  4928.                              :
  4929.                  (+)forward, (-)reverse, (Q)Quit, (L)Last, (F)First,
  4930.                  (N)Ent.No., (R)Report
  4931.                  Press choice:
  4932.  
  4933.             The Entry Number label displays the entry number of the
  4934.             current entry being viewed, and the total number of entries
  4935.             in the log.  The Program is the DOCZ System program that
  4936.             produced the log entries (not all DOCZ programs write
  4937.             entries to the log).  The Date/Time is the date (in the
  4938.             current date format) and time that the entry was added to
  4939.             the log.  The User ID is the I.D. (including nodename) of
  4940.             the User who was running the program that produced the log
  4941.             entry.  The User ID will contain both the node name and the
  4942.             username (see "SELECTING OPTIONS" for the MSDOS version).
  4943.             The Process ID is the I.D. of the process owning the program
  4944.  
  4945.  
  4946.                                          88
  4947.  
  4948.  
  4949.                                DOCZ PROGRAM REFERENCE
  4950.  
  4951.  
  4952.             that produced the log entry.  The Error Level is the
  4953.             severity of the message (Informational, Warning, Error, or
  4954.             Fatal).  And, Message is the message describing the log
  4955.             entry.
  4956.  
  4957.             The Report facility provided by DOCLOG allows one ore more
  4958.             log entries to be "dumped" to a file in the same format as
  4959.             they are displayed on the screen.  When R is selected, you
  4960.             will be prompted for a starting and ending entry number, as
  4961.             well as the name of the file to which you wish to write the
  4962.             report.
  4963.  
  4964.             Note: logging must be enabled for the transaction log to
  4965.             contain any entries.  See the section on "OTHER FEATURES,
  4966.             TRANSACTION LOGGING" for information on enabling logging.
  4967.  
  4968.             For an explanation of the [z_opt] command-line option, see
  4969.             "SELECTING OPTIONS:  Specifying Command Line Options."
  4970.  
  4971.  
  4972.  
  4973.  
  4974.  
  4975.  
  4976.  
  4977.  
  4978.  
  4979.  
  4980.  
  4981.  
  4982.  
  4983.  
  4984.  
  4985.  
  4986.  
  4987.  
  4988.  
  4989.  
  4990.  
  4991.  
  4992.  
  4993.  
  4994.  
  4995.  
  4996.  
  4997.  
  4998.  
  4999.  
  5000.  
  5001.  
  5002.  
  5003.  
  5004.  
  5005.  
  5006.  
  5007.  
  5008.                                          89
  5009.  
  5010.  
  5011.                                DOCZ PROGRAM REFERENCE
  5012.  
  5013.  
  5014.             DOCMAN
  5015.  
  5016.                  View the on-line DOCZ User Manual
  5017.  
  5018.                  Arguments
  5019.  
  5020.                       DOCMAN [/m]
  5021.  
  5022.                  Returns
  5023.  
  5024.                       Nothing
  5025.  
  5026.                  Errors
  5027.  
  5028.                       to screen
  5029.  
  5030.             The DOCMAN program is an interactive on-line documentation
  5031.             viewing utility for the DOCZ System.  DOCMAN allows the user
  5032.             to pick a subject from a subject menu for which one or more
  5033.             pages of manual text will be displayed.  The subject menu
  5034.             features all major DOCZ topics.  Menu items are selected by
  5035.             entering the subject, but only as many characters required
  5036.             to make the subject unique are required.  As the text for a
  5037.             subject is displayed, the user may scroll backwards and
  5038.             forwards through the text using the scrolling keys displayed
  5039.             on the screen (specific keys may differ between platforms).
  5040.  
  5041.             The /m option is provided on those platforms on which a
  5042.             color display is implemented.  The use of color may be
  5043.             defeated by use of the /m monochrome option.
  5044.  
  5045.  
  5046.  
  5047.  
  5048.  
  5049.  
  5050.  
  5051.  
  5052.  
  5053.  
  5054.  
  5055.  
  5056.  
  5057.  
  5058.  
  5059.  
  5060.  
  5061.  
  5062.  
  5063.  
  5064.  
  5065.  
  5066.  
  5067.  
  5068.  
  5069.  
  5070.                                          90
  5071.  
  5072.  
  5073.                                DOCZ PROGRAM REFERENCE
  5074.  
  5075.  
  5076.             DOCLEARN
  5077.  
  5078.                  Run the DOCZ Tutorial
  5079.  
  5080.                  Arguments
  5081.  
  5082.                       DOCLEARN [/m]
  5083.  
  5084.                  Returns
  5085.  
  5086.                       Nothing
  5087.  
  5088.                  Errors
  5089.  
  5090.                       to screen
  5091.  
  5092.             The DOCLEARN program is an interactive on-line tutorial for
  5093.             the DOCZ System.  DOCLEARN allows the user to pick a subject
  5094.             from a subject menu for which one or more pages of tutorial
  5095.             text will be displayed.  The subject menu features all major
  5096.             DOCZ topics.  Menu items are selected by entering the
  5097.             subject, but only as many characters required to make the
  5098.             subject unique are required.  As the text for a subject is
  5099.             displayed, the user may scroll backwards and forwards
  5100.             through the text using the scrolling keys displayed on the
  5101.             screen (specific keys may differ between platforms).
  5102.  
  5103.             The /m option is provided on those platforms on which a
  5104.             color display is implemented.  The use of color may be
  5105.             defeated by use of the /m monochrome option.
  5106.  
  5107.  
  5108.  
  5109.  
  5110.  
  5111.  
  5112.  
  5113.  
  5114.  
  5115.  
  5116.  
  5117.  
  5118.  
  5119.  
  5120.  
  5121.  
  5122.  
  5123.  
  5124.  
  5125.  
  5126.  
  5127.  
  5128.  
  5129.  
  5130.  
  5131.  
  5132.                                          91
  5133.  
  5134.  
  5135.                               DOCZ UTILITIES REFERENCE
  5136.  
  5137.  
  5138.             PSET
  5139.  
  5140.                  Maintain/use printer interface database
  5141.  
  5142.                  Arguments
  5143.  
  5144.                       PSET <token> [token] ... [token]
  5145.  
  5146.                            Send output to default printer
  5147.  
  5148.                       PSET <token> [token] [/D=nnnnn]
  5149.  
  5150.                            Send output to printer/queue nnnnn
  5151.  
  5152.                       PSET [tokens] /O
  5153.  
  5154.                            Send output to standard output
  5155.  
  5156.                       PSET [tokens] /O=nnnnn
  5157.  
  5158.                            Append output to file nnnnn
  5159.  
  5160.                       PSET ?
  5161.  
  5162.                            Display all tokens
  5163.  
  5164.                       PSET /E
  5165.  
  5166.                            Edit the printer sequences
  5167.  
  5168.                       PSET /U=nnnnn
  5169.  
  5170.                            Send dump of all sequences to file nnnnn
  5171.  
  5172.                       PSET [token] [/T=ww/hh]
  5173.  
  5174.                            Print test pattern, ww width/hh height
  5175.  
  5176.                       PSET /AI=<input ASCII transport file>
  5177.  
  5178.                            Read and merge a PSET database transported
  5179.  
  5180.                            from another system
  5181.  
  5182.                       PSET /AO=<output ASCII transport file>
  5183.  
  5184.                            Output a transport file containing the PSET
  5185.  
  5186.                            database
  5187.  
  5188.  
  5189.  
  5190.  
  5191.  
  5192.  
  5193.  
  5194.                                          93
  5195.  
  5196.  
  5197.                               DOCZ UTILITIES REFERENCE
  5198.  
  5199.  
  5200.                  Returns
  5201.  
  5202.                       Nothing
  5203.  
  5204.                  Errors
  5205.  
  5206.                       to Standard Error
  5207.  
  5208.             The PSET utility provides a general-purpose printer feature
  5209.             selection mechanism and a program interface to a printer
  5210.             control sequence data base.  Printer features are identified
  5211.             by a seven-character token.  Each token is accompanied by a
  5212.             feature description, and the actual escape sequence required
  5213.             by the printer.  Tokens are added to the PSET database,
  5214.             PSET.DAT, using the PSET editor, or by running the PCODE
  5215.             utility.
  5216.  
  5217.             If invoked with ? as the only argument, all installed
  5218.             sequences are displayed by token name and description (the ?
  5219.             must be quoted in the UNIX version).  If one or more tokens
  5220.             are passed on the command line, the corresponding sequences
  5221.             are transmitted to the default printer.  If PSET is invoked
  5222.             with no arguments, a usage prompt is displayed.
  5223.  
  5224.             The /d option is used to specify a printer or queue other
  5225.             than the default.
  5226.  
  5227.             The /o option is used to specify the output device for
  5228.             output or a file.
  5229.  
  5230.             The /u option performs a displayable ASCII dump of all
  5231.             installed sequences.  If no name is specified after the /u
  5232.             option, the default printer is used for output.
  5233.  
  5234.             The /t option sends a test pattern to the output device with
  5235.             ww characters per line and hh lines per page.  If no
  5236.             arguments are specified for the /t option (PSET /T), a 80 x
  5237.             66 pattern is generated.
  5238.  
  5239.             If the /e option is specified, the PSET interactive editor
  5240.             is invoked.  The PSET editor allows the user to install
  5241.             and/or modify sequences, and it utilizes help messages to
  5242.             guide the user through installation.  If no previous
  5243.             PSET.DAT exists on your system:
  5244.  
  5245.                  MSDOS:    in the search path
  5246.                  UNIX:          in the search path
  5247.                  VMS:      in DOCDAT
  5248.  
  5249.             then PSET will create the file in the current directory.
  5250.             Once the PSET file has been created, you must move PSET.DAT
  5251.             to the directory listed above.  The current maximum number
  5252.             of sequences that PSET can accommodate is 127.  As sequences
  5253.  
  5254.  
  5255.  
  5256.                                          94
  5257.  
  5258.  
  5259.                               DOCZ UTILITIES REFERENCE
  5260.  
  5261.  
  5262.             are added, insure that consecutive sequences are installed,
  5263.             i.e. no consecutive sequence numbers may be uninstalled.
  5264.  
  5265.             Operation of the PSET editor is self documenting and will
  5266.             not be further documented here.
  5267.  
  5268.             The /ao option will cause the PSET program to produce an
  5269.             ASCII transport file under the name specified.  This file
  5270.             may be transported to another system to be read by PSET
  5271.             using the /ai option.  On the system using a transport file
  5272.             as input, a check is made in the local PSET database for
  5273.             duplicate tokens in the transport file, and, if a duplicate
  5274.             is found, the token from the transport file is ignored.
  5275.  
  5276.  
  5277.  
  5278.  
  5279.  
  5280.  
  5281.  
  5282.  
  5283.  
  5284.  
  5285.  
  5286.  
  5287.  
  5288.  
  5289.  
  5290.  
  5291.  
  5292.  
  5293.  
  5294.  
  5295.  
  5296.  
  5297.  
  5298.  
  5299.  
  5300.  
  5301.  
  5302.  
  5303.  
  5304.  
  5305.  
  5306.  
  5307.  
  5308.  
  5309.  
  5310.  
  5311.  
  5312.  
  5313.  
  5314.  
  5315.  
  5316.  
  5317.  
  5318.                                          95
  5319.  
  5320.  
  5321.                               DOCZ UTILITIES REFERENCE
  5322.  
  5323.  
  5324.             For tokens specified in the PSET printer database:
  5325.  
  5326.                  S    The maximum token length is 7 characters, feature
  5327.                       description is 31, and output sequence is 17.
  5328.  
  5329.                  S    Tokens that begin with the underscore character
  5330.                       ('_') are reserved for use by Software Toolz.
  5331.                       utilities.
  5332.  
  5333.                  S    Printer sequences may not contain ASCII NULs (try
  5334.                       hex 80 instead).  If the sequence MUST contain a
  5335.                       NUL character, it cannot be supported by this
  5336.                       program.
  5337.  
  5338.             See also the PCODE utility.
  5339.  
  5340.             Note that long search paths or directories in your search
  5341.             path that contain many files may cause disk thrashing
  5342.             whenever the PSET reference file is needed (as when DOC is
  5343.             run).
  5344.  
  5345.  
  5346.  
  5347.  
  5348.  
  5349.  
  5350.  
  5351.  
  5352.  
  5353.  
  5354.  
  5355.  
  5356.  
  5357.  
  5358.  
  5359.  
  5360.  
  5361.  
  5362.  
  5363.  
  5364.  
  5365.  
  5366.  
  5367.  
  5368.  
  5369.  
  5370.  
  5371.  
  5372.  
  5373.  
  5374.  
  5375.  
  5376.  
  5377.  
  5378.  
  5379.  
  5380.                                          96
  5381.  
  5382.  
  5383.                               DOCZ UTILITIES REFERENCE
  5384.  
  5385.  
  5386.             PCODE
  5387.  
  5388.                  Install the PSET database for a particular printer
  5389.  
  5390.                  Arguments
  5391.  
  5392.                       PCODE [directory for PCODE.DAT]
  5393.  
  5394.                  Returns
  5395.  
  5396.                       Nothing
  5397.  
  5398.                  Errors
  5399.  
  5400.                       to Standard Error
  5401.  
  5402.             The PCODE utility provides the printer interface utility,
  5403.             PSET, with a set of features for many popular printers.
  5404.  
  5405.             If PCODE.DAT is not in the current directory when PCODE is
  5406.             run, the directory containing PCODE.DAT must be passed on
  5407.             the command line.  PCODE.DAT is a text data file containing
  5408.             the printer database for a number of popular printers.  This
  5409.             program is interactive and menu-driven.
  5410.  
  5411.             The features that PCODE currently supports:
  5412.  
  5413.                  SET                 set printer
  5414.                  RESET               reset printer
  5415.                  17 CPI              17 characters per inch
  5416.                  10 CPI              10 characters per inch
  5417.                  12 CPI              12 characters per inch
  5418.                  8 LPI               8 lines per inch
  5419.                  6 LPI               6 lines per inch
  5420.                  DOUBLE WIDTH ON     enter double width
  5421.                  DOUBLE WIDTH OFF    exit double width
  5422.                  BOLD ON             bold on
  5423.                  BOLD OFF            bold off
  5424.                  UNDERLINE ON        underline on
  5425.                  UNDERLINE OFF       underline off
  5426.                  DOUBLE STRIKE ON    double strike on
  5427.                  DOUBLE STRIKE OFF   double strike off
  5428.                  ITALICS ON          italics on
  5429.                  ITALICS OFF         italics off
  5430.                  SHADOW PRINT ON     shadow print on
  5431.                  SHADOW PRINT OFF    shadow print off
  5432.  
  5433.  
  5434.  
  5435.  
  5436.  
  5437.  
  5438.  
  5439.  
  5440.  
  5441.  
  5442.                                          97
  5443.  
  5444.  
  5445.                               DOCZ UTILITIES REFERENCE
  5446.  
  5447.  
  5448.             DOCZ currently uses only BOLD and UNDERLINE attributes when
  5449.             formatting documentation.  Future versions of DOCZ may
  5450.             incorporate additional character attributes.
  5451.  
  5452.                  S    beware that some printers do not allow certain
  5453.                       combinations of attributes.
  5454.  
  5455.                  S    when updated by PCODE, PSET.DAT does not need to
  5456.                       reside in the current directory:
  5457.  
  5458.                       MSDOS and UNIX versions:  the environment PATH
  5459.                       will be searched for PSET.DAT.
  5460.  
  5461.                       VMS version:  PSET.DAT must reside in the data
  5462.                       directory, pointed to by DOCDAT.
  5463.  
  5464.             The PCODE utility allows the selection of character
  5465.             attributes from the printer database reference file,
  5466.             PCODE.DAT, which is supplied with the DOCZ distribution.
  5467.             The user can select from a numbered list of printers by
  5468.             specifying the number in the list or the first unique
  5469.             characters of the name in the list.  If the list is too
  5470.             large to display on one screen, it will be frozen until the
  5471.             user presses [RETURN] or chooses a printer.
  5472.  
  5473.             Once a printer has been chosen, installation is then
  5474.             confirmed by the user, and the required character attributes
  5475.             are installed in the printer database file, PSET.DAT.  The
  5476.             installation for some printers may produce a "Feature not
  5477.             provided" warning message, but unless the feature is BOLD
  5478.             ON, BOLD OFF, UNDERLINE ON, or UNDERLINE OFF, the warning
  5479.             may be ignored.
  5480.  
  5481.             Other printer features are provided with the printer
  5482.             database reference file, and these features may be invoked
  5483.             by specifying their tokens as initialization sequences in
  5484.             the Configuration File, DOCZ.CFG.  The PSET utility can be
  5485.             used to examine the sequences installed in the printer
  5486.             database.  Tokens with names starting with the underscore
  5487.             character (_) are installed with the PCODE utility.
  5488.  
  5489.             The PCODE utility can also optionally send a test pattern to
  5490.             the attached printer using the sequences installed by the
  5491.             user.  The PCODE.DAT file need remain on the system only if
  5492.             the user wishes to reinstall the printer database with a new
  5493.             printer from the printer database reference file.
  5494.  
  5495.  
  5496.  
  5497.  
  5498.  
  5499.  
  5500.  
  5501.  
  5502.  
  5503.  
  5504.                                          98
  5505.  
  5506.  
  5507.                               DOCZ UTILITIES REFERENCE
  5508.  
  5509.  
  5510.             CALCDATE
  5511.  
  5512.                  Display current date in local date format
  5513.  
  5514.                  Arguments
  5515.  
  5516.                       calcdate [date] [/o=output file] [+/- days]
  5517.  
  5518.                  Returns
  5519.  
  5520.                       Nothing
  5521.  
  5522.                  Errors
  5523.  
  5524.                       to Standard Error
  5525.  
  5526.             The calcdate utility produces the current date in the local
  5527.             date format utilized by the DOCZ System for use in date
  5528.             comparisons.  The display screen is used for output, unless
  5529.             an optional output file is specified.  If a valid date is
  5530.             passed on the command line, an optional negative or positive
  5531.             offset may be specified to apply to the specified date.  If
  5532.             a negative or positive offset is specified with no date, it
  5533.             will be applied to the current date before is displayed.
  5534.  
  5535.                  Examples
  5536.  
  5537.                       calcdate
  5538.  
  5539.                            display today's date
  5540.  
  5541.                       calcdate +1
  5542.  
  5543.                            display tomorrow's date
  5544.  
  5545.                       calcdate -5
  5546.  
  5547.                            display the date five days ago
  5548.  
  5549.                       calcdate 7/8/89 +10
  5550.  
  5551.                            display the date ten days past 7/8/89
  5552.  
  5553.             Note that the calcdate utility uses the date format
  5554.             established by the System Manager for the DOCZ System.  See
  5555.             the section on Date Formats for more information.  Also, see
  5556.             the docrevs.sh example Shell script for an example of the
  5557.             usage of the calcdate utility.
  5558.  
  5559.  
  5560.  
  5561.  
  5562.  
  5563.  
  5564.  
  5565.  
  5566.                                          99
  5567.  
  5568.  
  5569.                               DOCZ UTILITIES REFERENCE
  5570.  
  5571.  
  5572.             REFORMAT
  5573.  
  5574.  
  5575.                  Reformat a text data file into print image
  5576.  
  5577.                  Arguments
  5578.  
  5579.                       reformat <input file> <output file> [opt]
  5580.                            Options:
  5581.                            /s=<width>     Column width separator size
  5582.                            /jr       Justify right
  5583.                            /jc       Justify center
  5584.                            /t        Use TABs to align
  5585.  
  5586.                  Returns
  5587.  
  5588.                       EXITNORMAL on success, EXITBAD if options are not
  5589.                       properly specified or files cannot be opened.
  5590.  
  5591.                  Errors
  5592.  
  5593.                       to Standard Error
  5594.  
  5595.             The REFORMAT utility takes text data files and reformats
  5596.             into columnar output for printing.  Text data files are a
  5597.             common format to most DOCZ programs and utilities.  The
  5598.             REFORMAT utility allows those files to be printed in a more
  5599.             readable fashion.
  5600.  
  5601.             The column width will be determined by the widest field in
  5602.             the column.  The maximum number of columns is 32.  Options
  5603.             are:
  5604.  
  5605.                  /s=<width>
  5606.  
  5607.                       Instead of 1 + the maximum field size, use <width>
  5608.                       + the maximum field size as the column separator
  5609.                       width
  5610.  
  5611.                  /jr
  5612.  
  5613.                       Use right justification on the columns instead of
  5614.                       left justification (the default)
  5615.  
  5616.                  /jc
  5617.  
  5618.                       Use centering justification on the columns instead
  5619.                       of left justification (the default)
  5620.  
  5621.                  /t
  5622.  
  5623.                       Use TAB characters (instead of spaces) to left
  5624.                       justify the columns
  5625.  
  5626.  
  5627.  
  5628.                                          100
  5629.  
  5630.  
  5631.                               DOCZ UTILITIES REFERENCE
  5632.  
  5633.  
  5634.             The default column width is one plus the width of the widest
  5635.             field in that column; this may be overridden with the /s
  5636.             option.  Left justification is the default and may be
  5637.             overridden by /jr and /jc.  The /s option will work in
  5638.             conjunction with /jr and /jc, but not with /t, which is the
  5639.             option to left-justify the columns using TABs.
  5640.  
  5641.  
  5642.  
  5643.  
  5644.  
  5645.  
  5646.  
  5647.  
  5648.  
  5649.  
  5650.  
  5651.  
  5652.  
  5653.  
  5654.  
  5655.  
  5656.  
  5657.  
  5658.  
  5659.  
  5660.  
  5661.  
  5662.  
  5663.  
  5664.  
  5665.  
  5666.  
  5667.  
  5668.  
  5669.  
  5670.  
  5671.  
  5672.  
  5673.  
  5674.  
  5675.  
  5676.  
  5677.  
  5678.  
  5679.  
  5680.  
  5681.  
  5682.  
  5683.  
  5684.  
  5685.  
  5686.  
  5687.  
  5688.  
  5689.  
  5690.                                          101
  5691.  
  5692.  
  5693.                               DOCZ UTILITIES REFERENCE
  5694.  
  5695.  
  5696.             FILLS
  5697.  
  5698.  
  5699.                  See if a file is space-filled or tab-filled
  5700.  
  5701.                  Arguments
  5702.  
  5703.                       FILLS <a.f.n.> [a.f.n.] ... [a.f.n.]
  5704.  
  5705.                  Returns
  5706.  
  5707.                       Nothing
  5708.  
  5709.                  Errors
  5710.  
  5711.                       to Standard Error
  5712.  
  5713.             The FILLS utility views the leading characters of lines in
  5714.             text files and determines whether they are TABs or SPACEs.
  5715.  
  5716.  
  5717.  
  5718.  
  5719.  
  5720.  
  5721.  
  5722.  
  5723.  
  5724.  
  5725.  
  5726.  
  5727.  
  5728.  
  5729.  
  5730.  
  5731.  
  5732.  
  5733.  
  5734.  
  5735.  
  5736.  
  5737.  
  5738.  
  5739.  
  5740.  
  5741.  
  5742.  
  5743.  
  5744.  
  5745.  
  5746.  
  5747.  
  5748.  
  5749.  
  5750.  
  5751.  
  5752.                                          102
  5753.  
  5754.  
  5755.                               DOCZ UTILITIES REFERENCE
  5756.  
  5757.  
  5758.             DETAB
  5759.  
  5760.  
  5761.                  Expand TAB characters to spaces
  5762.  
  5763.                  Arguments
  5764.  
  5765.                       DETAB <a.f.n.> [a.f.n.] [a.f.n.] ... [/tab stop]
  5766.  
  5767.                  Returns
  5768.  
  5769.                       Nothing
  5770.  
  5771.                  Errors
  5772.  
  5773.                       to Standard Error
  5774.  
  5775.             The DETAB utility will expand all of the ASCII TAB
  5776.             characters in a file to a pre-determined number of spaces.
  5777.             The default number of spaces to expand is 8, but any number
  5778.             can be optionally specified.
  5779.  
  5780.  
  5781.  
  5782.  
  5783.  
  5784.  
  5785.  
  5786.  
  5787.  
  5788.  
  5789.  
  5790.  
  5791.  
  5792.  
  5793.  
  5794.  
  5795.  
  5796.  
  5797.  
  5798.  
  5799.  
  5800.  
  5801.  
  5802.  
  5803.  
  5804.  
  5805.  
  5806.  
  5807.  
  5808.  
  5809.  
  5810.  
  5811.  
  5812.  
  5813.  
  5814.                                          103
  5815.  
  5816.  
  5817.                               DOCZ UTILITIES REFERENCE
  5818.  
  5819.  
  5820.             RETAB
  5821.  
  5822.  
  5823.                  Convert spaces to TAB characters
  5824.  
  5825.                  Arguments
  5826.  
  5827.                       RETAB <a.f.n.> [a.f.n.] [a.f.n.] ... [/tab stop]
  5828.  
  5829.                  Returns
  5830.  
  5831.                       Nothing
  5832.  
  5833.                  Errors
  5834.  
  5835.                       to Standard Error
  5836.  
  5837.             The RETAB utility converts text files aligned with spaces by
  5838.             converting spaces to an equivalent number of requird TAB
  5839.             characters.  The default "tab_stop" is 8.  Analyse the
  5840.             source code you are re-tabbing for the correct value of
  5841.             "tab_stop."
  5842.  
  5843.  
  5844.  
  5845.  
  5846.  
  5847.  
  5848.  
  5849.  
  5850.  
  5851.  
  5852.  
  5853.  
  5854.  
  5855.  
  5856.  
  5857.  
  5858.  
  5859.  
  5860.  
  5861.  
  5862.  
  5863.  
  5864.  
  5865.  
  5866.  
  5867.  
  5868.  
  5869.  
  5870.  
  5871.  
  5872.  
  5873.  
  5874.  
  5875.  
  5876.                                          104
  5877.  
  5878.  
  5879.                                    ERROR MESSAGES
  5880.  
  5881.  
  5882.             1k of memory could not be allocated for the banner!
  5883.             Facility:  DOC
  5884.             Memory could not be allocated while trying to write the
  5885.             cover page
  5886.  
  5887.             <argument> is an invalid argument!
  5888.             Facility:  DOC, DOCXL, DOCHBLD
  5889.             You have passed an invalid argument to the program.
  5890.  
  5891.             <argument> is an unknown argument!
  5892.             Facility:  DOCHBLD
  5893.             You have passed an invalid argument to the program.
  5894.  
  5895.             <argument> argument not recognized!
  5896.             Facility:  DOCXL
  5897.             The user has specified an invalid (possibly misspelled)
  5898.             argument.
  5899.  
  5900.             <argument> is not valid as an option!
  5901.             Facility:  DOCXL
  5902.             The user has specified an invalid option.
  5903.  
  5904.             <argument> specifier unknown!
  5905.             Facility:  DOCXL
  5906.             An argument specifier has been specified that is not
  5907.             recognized
  5908.  
  5909.             <file name> -> <file name> rename failed!
  5910.             Facility:  DOCXL, DOCXLU
  5911.             During a Documentation Index File rebuild, a temporary file
  5912.             could not be renamed to a permanent file.
  5913.  
  5914.             <index file> lock failed!
  5915.             Facility:  DOCXL
  5916.             Locking of the Documentation Index File failed
  5917.  
  5918.             <index file> unlock failed!
  5919.             Facility:  DOCXL
  5920.             Unlocking of the Documentation Index File failed
  5921.  
  5922.             <library name> is an invalid library name
  5923.             Facility:  DOC, DOCXL
  5924.             The user has specified a library name on the command line
  5925.             either too long in length or containing invalid characters.
  5926.  
  5927.             <module name> is an invalid module name
  5928.             Facility:  DOC, DOCXL
  5929.             The user has specified a module name on the command line
  5930.             either too long in length or containing invalid characters.
  5931.  
  5932.             <module name> module documentation not found!
  5933.             Facility:  DOCHBLD
  5934.             No documentation for the specified module name was found in
  5935.             the source file being scanned.
  5936.  
  5937.  
  5938.                                          105
  5939.  
  5940.  
  5941.                                    ERROR MESSAGES
  5942.  
  5943.  
  5944.  
  5945.             <module name> not found!
  5946.             Facility:  DOCHELP
  5947.             The module name requested by the user could not be found in
  5948.             the help library.
  5949.  
  5950.             <number> bytes could not be allocated!
  5951.             Facility:  DOC, DOCHELP, DOCHBLD
  5952.             A memory allocation failed due to lack of free memory.  VMS
  5953.             check related system/account parameters.
  5954.  
  5955.             <option> is wrong for argument <argument number>
  5956.             Facility:  DOCXL
  5957.             The user has specified an option incompatible with the other
  5958.             arguments.
  5959.  
  5960.             <parameter> not recognized as a DOC parameter!
  5961.             Facility:  DOC
  5962.             The user has coded a DOC parameter in the Documentation
  5963.             Header that is not valid.
  5964.  
  5965.             <parameter> has no arguments!
  5966.             Facility:  DOC, DOCHBLD
  5967.             The named parameter specified in the documentation header
  5968.             has no arguments
  5969.  
  5970.             Application Keyword Index sort failed!
  5971.             Facility:  DOC
  5972.             An attempt was made to use an external sort program to sort
  5973.             an intermediate file containing the Application Keyword
  5974.             Index, and the sort failed because (1) the sort program
  5975.             cannot be found, or (2) there is not enough available memory
  5976.             to perform the sort, or (3) the sort program does not work
  5977.             properly.
  5978.  
  5979.             Bad date!
  5980.             Facility:  DOC
  5981.             The Documentation Header contains a revision or fix date of
  5982.             an invalid format.
  5983.  
  5984.             Cannot call the command processor for sort!
  5985.             Facility:  DOC
  5986.             Either a call to the system command processor failed
  5987.             (possibly because it does not exist in the current search
  5988.             path [MSDOS]) or the command processor itself could not find
  5989.             the SORT utility in the current search path.  VMS requires
  5990.             SYS$SYTEM:SORT.EXE.  UNIX requires sort in the search path.
  5991.             MSDOS requires SSORT in the search path.  See INSTALLATION.
  5992.  
  5993.             Cannot determine DOCZ environment!
  5994.             Facility:  DOC, DOCHBLD, DOCHELP, DOCLOG, DOCXL, DOCXLED,
  5995.             DOCXLU, DOCMAN, DOCLEARN
  5996.             The environment variables and/or logical names have not been
  5997.             provided for the DOCZ System.
  5998.  
  5999.  
  6000.                                          106
  6001.  
  6002.  
  6003.                                    ERROR MESSAGES
  6004.  
  6005.  
  6006.  
  6007.             Cannot get DOCZ symbols!
  6008.             Facility:  DOC, DOCHBLD, DOCHELP, DOCLOG, DOCXL, DOCXLED,
  6009.             DOCXLU, DOCMAN, DOCLEARN
  6010.             The environment variables and/or logical names have not been
  6011.             provided for the DOCZ System.
  6012.  
  6013.             Cannot open <file name>!
  6014.             Facility:  DOC, DOCXL, DOCXLU
  6015.             The file cannot be opened in an unspecified mode.  Check
  6016.             file permissions.
  6017.  
  6018.             Cannot open <file name> for output!
  6019.             Facility:  DOCXL, DOCHBLD, DOCXLU
  6020.             The file could not be opened for writing.  Check file
  6021.             protection.
  6022.  
  6023.             Cannot open <file name> for input!
  6024.             Facility:  DOCXL, DOCHBLD, DOCXLU, DOCLOG, DOCLIS, DOCGET
  6025.             The file could not be opened for reading.  Check file
  6026.             protection.
  6027.  
  6028.             Cannot open <Documentation Index File spec> for input!
  6029.             Facility:  DOCXLED
  6030.             File cannot be found or opened.  Check logical names/symbols
  6031.             or file permission.
  6032.  
  6033.             Cannot open help file:  <filename>
  6034.             Facility:  DOCHELP
  6035.             The compiled help library, DOCHELP.HLP, could not be found
  6036.             in the Reference Directory.
  6037.  
  6038.             Cannot open <filename>!
  6039.             Facility:  DOC, DOCXL, DOCHBLD, DOCXLU
  6040.             The named file cannot be opened either because it does not
  6041.             exist (files opened for read) or process privilege does not
  6042.             allow access to the file or directory.
  6043.  
  6044.             Cannot read in Documentation Index File!
  6045.             Facility:  DOC, DOCHBLD
  6046.             The Documentation Index File cannot be read, possible due to
  6047.             file protection violation.
  6048.  
  6049.             CANNOT READ!
  6050.             Facility:  DOCXLED
  6051.             Unexplained read failure in the Documentation Index File.
  6052.  
  6053.             Cannot rename <file name> to <file name>!
  6054.             Facility:  DOC
  6055.             A call was made to the rename system service that failed.
  6056.             This can fail for the same reasons that a Unix mv, an MSDOS
  6057.             REN, or a VMS RENAME can fail.  Check for the pre-existence
  6058.             of the destination file or permissions.
  6059.  
  6060.  
  6061.  
  6062.                                          107
  6063.  
  6064.  
  6065.                                    ERROR MESSAGES
  6066.  
  6067.  
  6068.             Cannot read:  <file name>!
  6069.             Facility:  DOCHBLD
  6070.             The named file cannot be read.  Check file protection.
  6071.  
  6072.             Cannot read file!
  6073.             Facility:  DOCLOG
  6074.             The DOCZ log cannot be read.  Check file protection.
  6075.  
  6076.             CANNOT SEEK!
  6077.             Facility:  DOCXLED
  6078.             Unexplained seek failure in the Documentation Index File.
  6079.  
  6080.             Cannot seek in Documentation Index File!
  6081.             Facility:  DOC
  6082.             A seek failure has occurred in the Documentation Index File
  6083.             for an unknown reason.
  6084.  
  6085.             Cannot seek in help file!
  6086.             Facility:  DOCHELP
  6087.             A seek in the help library file has failed, possible due to
  6088.             the file header being corrupted.
  6089.  
  6090.             Cannot seek in file!
  6091.             Facility:  DOCLOG
  6092.             The DOCZ log cannot be read.  Check file protection.
  6093.  
  6094.             Cannot seek to <file offset>
  6095.             Facility:  DOC, DOCHBLD
  6096.             A seek in a source file failed for an unknown reason.
  6097.  
  6098.             Cannot seek to beginning of module index!
  6099.             Facility:  DOCHBLD
  6100.             While building the on-line help library, an error occurred
  6101.             in a seek in the output file.
  6102.  
  6103.             Cannot validate date: <date>; check date format: <date
  6104.             format>!
  6105.             Facility:  DOCXL, DOCXLED
  6106.             A date was specified on the command line or embedded in the
  6107.             documentation header that does not match the date format
  6108.             string.
  6109.  
  6110.             <command> failed as a command!
  6111.             Facility:  DOCLIS
  6112.             The specified command was to be executed but could not
  6113.             because (1) the command processor could not be loaded, (2)
  6114.             it is an invalid command, (3) the command could not be
  6115.             found, (4) or there is not enough memory.
  6116.  
  6117.  
  6118.  
  6119.  
  6120.  
  6121.  
  6122.  
  6123.  
  6124.                                          108
  6125.  
  6126.  
  6127.                                    ERROR MESSAGES
  6128.  
  6129.  
  6130.             Configuration File specifies printer: <printer name>; but
  6131.             PSET specifies: <printer name>!
  6132.             Facility:  DOC
  6133.             The printer named in the PSET database and DOCZ
  6134.             Configuration File are different.  This is a permissible
  6135.             condition in some environments using alternate Configuration
  6136.             Files.
  6137.  
  6138.             Date format string does not match date format!
  6139.             Facility:  DOC
  6140.             A date was specified on the command line or embedded in the
  6141.             documentation header that does not match the date format
  6142.             string.
  6143.  
  6144.             Could not lock Documentation Index File!
  6145.             Facility:  DOCXL, DOCXLU
  6146.             An attempt to write lock a record in the Documentation Index
  6147.             File has failed.  The record may be locked by another
  6148.             program.
  6149.  
  6150.             Could not call convert-to-stream (VMS version) for
  6151.             <filename>
  6152.             Facility:  DOC, DOCHBLD
  6153.             The named file could not be converted from its present
  6154.             format to a Stream file either because the VMS Convert
  6155.             routines failed or the DOCDAT:  directory does not contain
  6156.             STREAM.FDL.
  6157.  
  6158.             Could not read <number> entries in key index!
  6159.             Facility:  DOCHBLD
  6160.             A read during a help file build caused an error.
  6161.  
  6162.             Could not write <number> entries in key index!
  6163.             Facility:  DOCHBLD
  6164.             A write during a help file build caused an error.
  6165.  
  6166.             Date (date) format error!
  6167.             Facility:  DOC
  6168.             A date was specified on the command line or embedded in the
  6169.             documentation header that does not match the date format
  6170.             string.
  6171.  
  6172.             DOC-RPT_INIT-W-PSET parameter problem!
  6173.             Facility:  DOC
  6174.             Either a PSET parameter was specified in the Configuration
  6175.             File that does not exist in the PSET database, the PSET
  6176.             database has never been built, or the PSET database file
  6177.             (PSET.DAT) cannot be read.
  6178.  
  6179.             Documentation Index File is empty or does not exist!
  6180.             Facility:  DOCXLU
  6181.             The Documentation Index File is empty or does not exist!
  6182.  
  6183.             Documentation Index File has no entries for <library name>!
  6184.  
  6185.  
  6186.                                          109
  6187.  
  6188.  
  6189.                                    ERROR MESSAGES
  6190.  
  6191.  
  6192.             Facility:  DOC
  6193.             A library name was specified for which the Documentation
  6194.             Index File contains no entries.
  6195.  
  6196.             Documentation Index File locking error!
  6197.             Facility:  DOCXLU
  6198.             An attempt to lock the Documentation Index File failed.
  6199.             Check VMS image privileges.  Check MSDOS sharing.
  6200.  
  6201.             DOCZ log is empty!
  6202.             Facility:  DOCLOG
  6203.             There are no entries in the log.  Check to see that logging
  6204.             is enabled (via the Configuration File).  This message will
  6205.             be displayed when DOCLOG is run immediately after
  6206.             installation, and no DOCZ programs have yet had the
  6207.             opportunity to make log entries.
  6208.  
  6209.             Empty field <parameter name> is required!
  6210.             Facility:  DOC
  6211.             A required parameter in a documentation header was specified
  6212.             without any arguments.
  6213.  
  6214.             FIELD:  <parameter name>, count overflow - current=<number>
  6215.             - max=<number>!
  6216.             Facility:  DOC, DOCHBLD
  6217.             The Documentation Header contains a parameter that may occur
  6218.             multiple times, but the user has exceeded the allowable
  6219.             number of occurrences of the parameter.
  6220.  
  6221.             Field count overflow!
  6222.             Facility:  DOCHBLD
  6223.             The Documentation Header contains a parameter that may occur
  6224.             multiple times, but the user has exceeded the allowable
  6225.             number of occurrences of the parameter.
  6226.  
  6227.             File too big or sort utility not found!
  6228.             Facility:  DOC
  6229.             An attempt was made to call an external sort program to sort
  6230.             an intermediate file, and the sort failed because (1) the
  6231.             sort program cannot be found, or (2) there is not enough
  6232.             available memory to perform the sort, or (3) the sort
  6233.             program does not work properly.
  6234.  
  6235.             File write failure on <file name>!
  6236.             Facility:  DOCXL, DOCXLU
  6237.             An attempt to write to a file failed.  Check file protection
  6238.             or device full.
  6239.  
  6240.             Incomplete set of command line arguments!
  6241.             Facility:  DOCXL
  6242.             The requisite set of command line arguments was not properly
  6243.             specified.
  6244.  
  6245.             Index write for <module name> failed!
  6246.  
  6247.  
  6248.                                          110
  6249.  
  6250.  
  6251.                                    ERROR MESSAGES
  6252.  
  6253.  
  6254.             Facility:  DOCHBLD
  6255.             An attempt to write to the Documentation Index File failed.
  6256.             Check file protection.
  6257.  
  6258.             <Index File> lock failed!
  6259.             Facility:  DOCXL
  6260.             An attempt to lock the Documentation Index File failed.
  6261.             Check VMS image privileges.  Check MSDOS sharing.
  6262.  
  6263.             <Index File> unlock failed!
  6264.             Facility:  DOCXL
  6265.             An attempt to unlock the Documentation Index File failed.
  6266.             Check VMS image privileges.  Check MSDOS sharing.
  6267.  
  6268.             Invalid Date!
  6269.             Facility:  DOCXL
  6270.             The user has specified an invalid date.
  6271.  
  6272.             Invalid modification date/time!
  6273.             Facility:  DOCXLED
  6274.             Date or time entered in an improper format.  See DOCZ
  6275.             section on Conventions.
  6276.  
  6277.             Invalid U record in Configuration File!
  6278.             Facility:  DOC, DOCXLU, DOCHBLD
  6279.             An error in the user-supplied U record in the Configuration
  6280.             File was detected.  See DOCZ section on Specifying Options.
  6281.  
  6282.             <library name> is not valid as a DOC library name
  6283.             Facility:  DOC
  6284.             The user specified a module name containing invalid
  6285.             characters (the user may have specified a file name instead
  6286.             of a library name).
  6287.  
  6288.             Library name does not match current library <library name>
  6289.             Facility:  DOC
  6290.             The documentation header in the source for the module
  6291.             contains a .LIBRARY parameter with a different library name
  6292.             than the name specified on the DOC command line.
  6293.  
  6294.             Library, module, or file not specified!
  6295.             Facility:  DOCXL
  6296.             An add/update was requested without specifying the library
  6297.             name, module name, or source file name.
  6298.  
  6299.             Line number <number> contains an unrecognized parameter!
  6300.             Facility:  DOC
  6301.             The DOCZ Configuration File contains an invalid parameter on
  6302.             the specified line.
  6303.  
  6304.             Memory allocation for permutation failed!
  6305.             Facility:  DOC
  6306.  
  6307.  
  6308.  
  6309.  
  6310.                                          111
  6311.  
  6312.  
  6313.                                    ERROR MESSAGES
  6314.  
  6315.  
  6316.             The memory that must be allocated to perform the text
  6317.             permutation on the module descriptions failed.  Memory may
  6318.             be limited in your system.
  6319.  
  6320.             Missing <DOC parameter> field is required!
  6321.             Facility:  DOC
  6322.             A required DOC parameter is missing in the Documentation
  6323.             Header.
  6324.  
  6325.             Month is negative or greater than 12!
  6326.             Facility:  DOC
  6327.             An attempt to validate a date failed because the month was
  6328.             out of range.
  6329.  
  6330.             <module name> is an invalid module name in <file name>
  6331.             Facility:  DOC
  6332.             The specified module name contains invalid characters (the
  6333.             user may have specified a file name instead of a module
  6334.             name).
  6335.  
  6336.             <module name> is an invalid module name!
  6337.             Facility:  DOCXL
  6338.             The specified module name contains invalid characters (the
  6339.             user may have specified a file name instead of a module
  6340.             name).
  6341.  
  6342.             <module name> NOT FOUND FOR <library name> LIBRARY!
  6343.             Facility:  DOCXLED
  6344.             A module was specified in a search, and the module could not
  6345.             be found.
  6346.  
  6347.             Needed to read <number> items but less were read!
  6348.             Facility:  DOCHELP
  6349.             The help library file has not been formatted correctly.  It
  6350.             could either be damaged, or the original documentation was
  6351.             not formatted correctly.
  6352.  
  6353.             No files match <ambiguous file name>!
  6354.             Facility:  DOCLIS
  6355.             An ambiguous file name was specified to DOCLIS for which
  6356.             there were no matches.
  6357.  
  6358.             No FIXES/REVISIONS within date range for <library name>!
  6359.             Facility:  DOC
  6360.             Either a Fix Notice or Revision Notice was selected but no
  6361.             Fix or Revision dates embedded in the module documentation
  6362.             qualify.
  6363.  
  6364.             NO modules found!
  6365.             Facility:  DOC
  6366.             No modules matching the command line criteria could be found
  6367.             in the Documentation Index File.
  6368.  
  6369.             No modules found for help library!
  6370.  
  6371.  
  6372.                                          112
  6373.  
  6374.  
  6375.                                    ERROR MESSAGES
  6376.  
  6377.  
  6378.             Facility:  DOCHBLD
  6379.             No modules could be processed to build a help library.  The
  6380.             Documentation Index File may be empty.
  6381.  
  6382.             No module documentation found in <source file>!
  6383.             Facility:  DOC
  6384.             There were no modules for the current library found in the
  6385.             named source file.  Check the .LIBRARY field.
  6386.  
  6387.             No <report type> for this library!
  6388.             Facility:  DOC
  6389.             One of the various report types was selected for which there
  6390.             were no qualifying modules.
  6391.  
  6392.             No occurrences of <module name> in <library name> library
  6393.             located!
  6394.             Facility:  DOCXL
  6395.             A user-specified search has failed to find any modules.
  6396.  
  6397.             Not enough arguments
  6398.             Facility:  DOCXL
  6399.             Not enough command line arguments have been specified.
  6400.  
  6401.             Not found!
  6402.             Facility:  DOCHELP
  6403.             The user specified a module name not in the documentation
  6404.             help library.
  6405.  
  6406.             NOT FOUND: <file name> Library: <library name> Module:
  6407.             <module name>
  6408.             Facility:  DOCHBLD
  6409.             The source file for the specified module could not be found.
  6410.  
  6411.             Number of days is incorrect for the month!
  6412.             Facility:  DOC
  6413.             A date validation revealed an ill-formatted date.
  6414.  
  6415.             Only <number> DOC parameters found for <module name> in
  6416.             <source file name>!
  6417.             Facility:  DOC
  6418.             The program could not detect enough DOC parameters in the
  6419.             source file for a valid Documentation Header.
  6420.  
  6421.             <option> is not valid as an option!
  6422.             Facility:  DOCXL
  6423.             The option was specified on the command line, but it is
  6424.             invalid.
  6425.  
  6426.             <option> specifier unknown!
  6427.             Facility:  DOCXL
  6428.             The invalid option was specified.
  6429.  
  6430.             OUT OF RANGE!
  6431.             Facility:  DOCXLED
  6432.  
  6433.  
  6434.                                          113
  6435.  
  6436.  
  6437.                                    ERROR MESSAGES
  6438.  
  6439.  
  6440.             You have attempted to select an entry before the first entry
  6441.             in the file or after the last entry in the file.
  6442.  
  6443.             Parameter in DOCZ.CFG specified too many times!
  6444.             Facility:  DOC
  6445.             The specification of a parameter exceeded the maximum
  6446.             allowable occurrences.
  6447.  
  6448.             Permuted description sort failed!
  6449.             Facility:  DOC
  6450.             An attempt was made to call an external sort program to sort
  6451.             an intermediate file containing the permuted module
  6452.             descriptions, and the sort failed because (1) the sort
  6453.             program cannot be found, or (2) there is not enough
  6454.             available memory to perform the sort, or (3) the sort
  6455.             program does not work properly.
  6456.  
  6457.             PSET parameter problem
  6458.             Facility:  DOC
  6459.             You have specified a PSET parameter that does not exist in
  6460.             the PSET database or the PSET database file cannot be
  6461.             opened.
  6462.  
  6463.             Read error in help file!
  6464.             Facility:  DOCHELP
  6465.             The help library file has been damaged, mis-formatted, or
  6466.             file protection has been applied to it.
  6467.  
  6468.             Report formatter initialization failure
  6469.             Facility:  DOC
  6470.             Either memory could not be allocated or the output print
  6471.             file could not be opened for write.
  6472.  
  6473.             Report formatter closing failure
  6474.             Facility:  DOC
  6475.             An exit PSET parameter has been specified that is not in the
  6476.             PSET database or the PSET database file could not be opened.
  6477.  
  6478.             SEARCH ABORTED!
  6479.             Facility:  DOCXLED
  6480.             User pressed a key while a search was in progress (not an
  6481.             error).
  6482.  
  6483.             Second command must be an option!
  6484.             Facility:  DOCLIS
  6485.             A file specification may only be the first argument to
  6486.             DOCLIS.
  6487.  
  6488.             SYSLCK privilege required!
  6489.             Facility:  DOCXL, DOCXLU
  6490.             The DOCXL image (VMS version) must be installed with the
  6491.             SYSLCK privilege or must be run by accounts with the SYSLCK
  6492.             privilege.
  6493.  
  6494.  
  6495.  
  6496.                                          114
  6497.  
  6498.  
  6499.                                    ERROR MESSAGES
  6500.  
  6501.  
  6502.             The day is negative!
  6503.             Facility:  DOC
  6504.             The date could not be validated for the specified reason.
  6505.  
  6506.             The <file name> Configuration File is not formatted
  6507.             correctly!
  6508.             Facility:  DOC
  6509.             The Configuration File is garbled.
  6510.  
  6511.             The font file BANNER.DAT could not be found!
  6512.             Facility:  DOC
  6513.             In all versions except MSDOS, the font file (BANNER.DAT)
  6514.             must be installed in the data directory or search path.
  6515.  
  6516.             The font file BANNER.DAT could not be read!
  6517.             Facility:  DOC
  6518.             The font file (BANNER.DAT) was found but could not be read.
  6519.  
  6520.             The O and V options are incompatible!
  6521.             Facility:  DOCHBLD
  6522.             The user has specified mutually exclusive command options to
  6523.             DOCHBLD
  6524.  
  6525.             The PSET database does not exist or does not contain
  6526.             character attributes!
  6527.             Facility:  DOC
  6528.             Character attributes cannot be determined for the printer
  6529.             specified in the Configuration File because the PSET.DAT
  6530.             file does not exist, cannot be found in the search PATH, or
  6531.             is empty.
  6532.  
  6533.             The year is negative!
  6534.             Facility:  DOC
  6535.             The date could not be validated for the specified reason.
  6536.  
  6537.             Tried to read more than maximum no. (<number>) of
  6538.             references!
  6539.             Facility:  DOC
  6540.             The users library contains more modules than is allowed for
  6541.             the memory allocated on the user's system.  See INSTALLATION
  6542.             for information on the maximum number of modules allowed in
  6543.             a single library displayed by number.
  6544.  
  6545.             Upper Case: <library>-<module>-<file specification>
  6546.             Facility:  DOCXLU
  6547.             While outputting an ASCII Transport File on an MSDOS or VMS
  6548.             system, upper case characters in a file specification were
  6549.             detected; a potential problem if transported to a Unix
  6550.             system.
  6551.  
  6552.             Version Control fetch of <filename> failed!
  6553.             Facility:  DOC, DOCHBLD
  6554.  
  6555.  
  6556.  
  6557.  
  6558.                                          115
  6559.  
  6560.  
  6561.                                    ERROR MESSAGES
  6562.  
  6563.  
  6564.             (VMS version)The module is not contained in the CMS library
  6565.             pointed to by DOCSRC, or CMS produced an undefined failure
  6566.             on a fetch.
  6567.  
  6568.             Wrong arguments
  6569.             Facility:  DOCXL
  6570.             The user has specified the wrong combination of arguments.
  6571.  
  6572.  
  6573.  
  6574.  
  6575.  
  6576.  
  6577.  
  6578.  
  6579.  
  6580.  
  6581.  
  6582.  
  6583.  
  6584.  
  6585.  
  6586.  
  6587.  
  6588.  
  6589.  
  6590.  
  6591.  
  6592.  
  6593.  
  6594.  
  6595.  
  6596.  
  6597.  
  6598.  
  6599.  
  6600.  
  6601.  
  6602.  
  6603.  
  6604.  
  6605.  
  6606.  
  6607.  
  6608.  
  6609.  
  6610.  
  6611.  
  6612.  
  6613.  
  6614.  
  6615.  
  6616.  
  6617.  
  6618.  
  6619.  
  6620.                                          116
  6621.  
  6622.  
  6623.                                    OTHER FEATURES
  6624.  
  6625.  
  6626.             Directory Layout
  6627.  
  6628.             The DOCZ System programs neither store source files nor do
  6629.             they create any directories in which source files are
  6630.             stored.  The path to a source file is stored in the
  6631.             Documentation Index File.  The file name specified in that
  6632.             path may be specified either with or without a directory
  6633.             name.  If no directory name is specified with the file or
  6634.             there is no U record in the Configuration File that applies
  6635.             to the current module, the default condition is assumed:
  6636.  
  6637.                  (1)  The root directory for such source files will be
  6638.                       pointed to by the DOCSRC symbol or logical name.
  6639.  
  6640.                  (2)  The file will be located in a sub-directory of the
  6641.                       DOCSRC root directory, the name of which will be
  6642.                       the name of the library (in upper case).
  6643.  
  6644.             For example, if a module fred were stored in the fred.c
  6645.             source, and specified to DOCXL as in:
  6646.  
  6647.                  DOCXL clib fred fred.c
  6648.  
  6649.             The default location of the fred.c source file would be:
  6650.  
  6651.                  VMS:      [equivalent_of_DOCSRC.CLIB]FRED.C
  6652.                  MSDOS:    %DOCSRC%\CLIB\FRED.C
  6653.                  UNIX:          $DOCSRC/CLIB/fred.c
  6654.  
  6655.             If a directory specification is specified with the source
  6656.             file, that full specification will be used to find the file.
  6657.  
  6658.             In the VMS version (using CMS version control), if the
  6659.             subdirectory of the library name is not a valid CMS library,
  6660.             the directory pointed to by DOCSRC will be tested for
  6661.             validity as a CMS library.  If DOCSRC points to a valid CMS
  6662.             library, source files will be fetched from that library.
  6663.             This feature allows CMS users to combine all source files in
  6664.             all libraries into one CMS library (should they choose to do
  6665.             so).
  6666.  
  6667.  
  6668.  
  6669.  
  6670.  
  6671.  
  6672.  
  6673.  
  6674.  
  6675.  
  6676.  
  6677.  
  6678.  
  6679.  
  6680.  
  6681.  
  6682.                                          117
  6683.  
  6684.  
  6685.                                    OTHER FEATURES
  6686.  
  6687.  
  6688.             Cross-Platform Development
  6689.  
  6690.  
  6691.  
  6692.             The Documentation Index File
  6693.  
  6694.             Remember, that if no directory is specified with a file name
  6695.             in the Documentation Index File or the default file
  6696.             specification is not overridden with a U record in the
  6697.             Configuration File, DOCZ assumes the default condition and
  6698.             internally generates a path to the file based on the DOCSRC
  6699.             symbol (or logical name).  On the other hand, a directory
  6700.             name may be stored with the full file specification for a
  6701.             source module, forcing DOCZ to bypass the use of the DOCSRC
  6702.             symbol.  This feature is especially useful when DOCZ
  6703.             documentation is found in headers that must be included by
  6704.             the compiler, and the development environment is configured
  6705.             such that there is a header directory separate from the
  6706.             location used for the storage of DOCZ source files.
  6707.  
  6708.             Specifying a directory name can pose an interesting
  6709.             challenge in a multi-platform development environment, as
  6710.             directory specifications do not generally transport from one
  6711.             operating system to another.
  6712.  
  6713.             For those instances where full file specifications need to
  6714.             be specified in the Documentation Index and  transportation
  6715.             of the Documentation Index File from one hardware platform
  6716.             to another is necessary, the DOCZ system allows symbol
  6717.             substitution for the directory portion of a complete file
  6718.             specification.  If a valid file name is preceded by a token
  6719.             surrounded by a dollar ($) sign, an attempt to translate
  6720.             that token, using the environment symbols or logical names,
  6721.             into a directory specification will be performed.
  6722.  
  6723.             For example:  assume a symbol (or logical name) is defined:
  6724.  
  6725.                  VMS:
  6726.  
  6727.                       SRCFILES == "$2$DUA21:[USER.PROJECT.SOURCE]"
  6728.  
  6729.                  or
  6730.  
  6731.                       DEFINE/PROCESS SRCFILES -
  6732.                       $2$DUA21:[USER.PROJECT.SURCE]
  6733.  
  6734.                  MSDOS:
  6735.  
  6736.                       SET SRCFILES=c:\user\project\source
  6737.  
  6738.                  UNIX:
  6739.  
  6740.                       SRCFILES=/usr2/project/source
  6741.                       export SRCFILES
  6742.  
  6743.  
  6744.                                          118
  6745.  
  6746.  
  6747.                                    OTHER FEATURES
  6748.  
  6749.  
  6750.             And, the module were added to the DOCZ system by:
  6751.  
  6752.                  DOCXL clib fred $SRCFILES$fred.c
  6753.  
  6754.             or (in the Unix version, where the last argument must be
  6755.             quoted to preserve the '$' sign being passed to DOCXL):
  6756.  
  6757.                  DOCXL clib fred '$SRCFILES$fred.c'
  6758.  
  6759.             When the module is needed by the DOCZ system, the SRCFILES
  6760.             symbol will be translated to the required directory
  6761.             specification.
  6762.  
  6763.             This feature will allow you to use the same Documentation
  6764.             Index File transported to different computers using
  6765.             different file naming conventions when you choose to specify
  6766.             full file specifications in the Documentation Index.  See
  6767.             the documentation DOCXLU for information on generating ASCII
  6768.             Transport Files for the Documentation Index File.
  6769.  
  6770.             ASCII Transport Files for the Documentation Index File are
  6771.             produced by the DOCXLU command.  An output file is generated
  6772.             using the /ao option, and an input file is read using the
  6773.             /ai option.  The method used for physically transferring the
  6774.             ASCII files from one platform to another is totally
  6775.             dependent on your site's environment and local network, and
  6776.             can be achieved in several ways.  In all cases, insure that
  6777.             Transport files are transported as "text" files.
  6778.  
  6779.  
  6780.  
  6781.  
  6782.  
  6783.  
  6784.  
  6785.  
  6786.  
  6787.  
  6788.  
  6789.  
  6790.  
  6791.  
  6792.  
  6793.  
  6794.  
  6795.  
  6796.  
  6797.  
  6798.  
  6799.  
  6800.  
  6801.  
  6802.  
  6803.  
  6804.  
  6805.  
  6806.                                          119
  6807.  
  6808.  
  6809.                                    OTHER FEATURES
  6810.  
  6811.  
  6812.             DOCZ Help Libraries
  6813.  
  6814.             ASCII Transport Files for on-line help libraries can be
  6815.             produced by the DOCHBLD command.  An output file is
  6816.             generated using the /ao option, and an input file is read
  6817.             using the /ai option.  With this capability, in a cross-
  6818.             platform development environment, the source files need be
  6819.             kept on only one platform, but the help libraries can be
  6820.             made available to developers on all platforms.  Note:  the
  6821.             DOCZ System must be licensed on all platforms.
  6822.  
  6823.             The ASCII Transport File output of the DOCHBLD program can
  6824.             be combined with the ASCII Transport File from other
  6825.             platforms.  It can also be combined with the on-line help
  6826.             library that comes with the DOCZ System.  Simply use the /ai
  6827.             option to combine ASSCI Transport Files as input to DOCHBLD.
  6828.  
  6829.             For example, to produce an ASCII Transport File for an on-
  6830.             line help library for all modules documented by your local
  6831.             DOCZ System:
  6832.  
  6833.                  dochbld /ao=help.txt
  6834.  
  6835.             Then, combine the ASCII Transport File with DOCHELP.TXT,
  6836.             which is distributed with the DOCZ System:
  6837.  
  6838.             Unix:          dochbld -ai=help.txt,$DOCSRC/dochelp.txt
  6839.             VMS:      dochbld /ai=help.txt,DOCSRC:dochelp.txt
  6840.             MSDOS:    dochbld /ai=help.txt,%DOCSRC%\dochelp.txt
  6841.  
  6842.             Which will build a new on-line help library using the
  6843.             contents of both help.txt and dochelp.txt.
  6844.  
  6845.             To combine your local on-line help library with both the
  6846.             DOCZ help library and the Standard C Library on-line help,
  6847.             use the following command(s):
  6848.  
  6849.             Unix:          dochbld -
  6850.             ai=help.txt,$DOCSRC/dochelp.txt,$DOCSRC/c.txt
  6851.             VMS:      dochbld
  6852.             /ai=help.txt,DOCSRC:dochelp.txt,DOCSRC:c.txt
  6853.             MSDOS:    dochbld
  6854.             /ai=help.txt,%DOCSRC%\dochelp.txt,%DOCSRC%\c.txt
  6855.  
  6856.  
  6857.  
  6858.  
  6859.  
  6860.  
  6861.  
  6862.  
  6863.  
  6864.  
  6865.  
  6866.  
  6867.  
  6868.                                          120
  6869.  
  6870.  
  6871.                                    OTHER FEATURES
  6872.  
  6873.  
  6874.             Version Control
  6875.  
  6876.             None of the DOCZ System programs actually update source code
  6877.             using the DOCZ supported version control software; this is a
  6878.             responsibility of the site.  However, the DOCZ System
  6879.             provides tools to help automate such activities.  One such
  6880.             tool is the DOCLIS command, with which a source add or
  6881.             update can be automated through the calling of command files
  6882.             written for the site's development environment by the local
  6883.             administrator.  See the DOCLIS documentation for the
  6884.             implementation of this feature and the EXAMPLES in this
  6885.             manual for suggestions on how to implement automation using
  6886.             this feature.  Whenever possible, source code for the
  6887.             examples are included on the distribution media for use and
  6888.             modification by the DOCZ System administrator.
  6889.  
  6890.  
  6891.  
  6892.             Cross-Platform Transportation Summary
  6893.  
  6894.                  Export the Documentation Index File
  6895.  
  6896.                       DOCXLU /ao=<transport file>
  6897.  
  6898.                  Import the Documentation Index FIle
  6899.  
  6900.                       DOCXLU /ai=<transport file>
  6901.  
  6902.                  Export the Help Library
  6903.  
  6904.                       DOCHBLD /ao=<transport file>
  6905.  
  6906.                  Import the Help Library
  6907.  
  6908.                       DOCHBLD /ai=<transport file>
  6909.  
  6910.                  Export the printer database
  6911.  
  6912.                       PSET /ao=<transport file>
  6913.  
  6914.                  Import the printer database
  6915.  
  6916.                       PSET /ai=<transport file>
  6917.  
  6918.  
  6919.  
  6920.  
  6921.  
  6922.  
  6923.  
  6924.  
  6925.  
  6926.  
  6927.  
  6928.  
  6929.  
  6930.                                          121
  6931.  
  6932.  
  6933.                                    OTHER FEATURES
  6934.  
  6935.  
  6936.             Using DOCZ WIthout Source Code
  6937.  
  6938.  
  6939.             The  DOCZ System can be used to document routines and
  6940.             programs for which you do not have the source code.  The
  6941.             documentation header can be contained in a text file stored
  6942.             with the other members of the library.  In fact, any number
  6943.             of modules can be documented in this manner, including
  6944.             libraries supplied with compilers.  Combining such
  6945.             documentation with the DOCZ System provides a sole
  6946.             referencing source for all developers, including on-line
  6947.             help.
  6948.  
  6949.             The documentation for such modules can either be typed by
  6950.             hand or scanned-in, provided you have the proper equipment
  6951.             and provided that the scanning of the documentation does not
  6952.             violate copyrights.
  6953.  
  6954.  
  6955.  
  6956.  
  6957.  
  6958.  
  6959.  
  6960.  
  6961.  
  6962.  
  6963.  
  6964.  
  6965.  
  6966.  
  6967.  
  6968.  
  6969.  
  6970.  
  6971.  
  6972.  
  6973.  
  6974.  
  6975.  
  6976.  
  6977.  
  6978.  
  6979.  
  6980.  
  6981.  
  6982.  
  6983.  
  6984.  
  6985.  
  6986.  
  6987.  
  6988.  
  6989.  
  6990.  
  6991.  
  6992.                                          122
  6993.  
  6994.  
  6995.                                        HISTORY
  6996.  
  6997.  
  6998.             DOCZ 1.0
  6999.  
  7000.             4/86 31469     DOC and DOCXL first release, VMS
  7001.             5/86 31472     Add REVISION Notice report capability to DOC
  7002.             6/86 31528     Add user-specified printer set-up capability
  7003.             7/86 31559     Cover tutorial/introduction feature
  7004.                            introduced to DOC
  7005.             7/86 31562     Increased size provision for module names and
  7006.                            file names
  7007.             8/86 31569     VMS automatic conversion to Stream_LF
  7008.                            introduced
  7009.             12/86 31702    DOC parameters converted from numeric to
  7010.                            English
  7011.  
  7012.  
  7013.             DOCZ 1.1
  7014.  
  7015.             1/87 31726     MSDOS version introduced
  7016.             7/87 31906     CMS support introduced (VMS version)
  7017.             8/87 31953     Add capability to specify DOCZ directories
  7018.                            via CLI symbols
  7019.             9/87 31971     Add on-line help library build for VMS
  7020.                            version
  7021.             9/87 31983     Add automatic installation for popular
  7022.                            printers
  7023.             9/87 31987     Add support for printer character attributes
  7024.                            in documentation
  7025.             10/87 32017    Add provision to locate source in multiple
  7026.                            named directories
  7027.  
  7028.  
  7029.             DOCZ 1.3
  7030.  
  7031.             1/88 32109     Add FIX Notice report capability to DOC
  7032.             1/88 32110     Add Documentation Index File rebuild
  7033.                            capability
  7034.             2/88 32128     Add documentation summary feature to DOC
  7035.             2/88 32127     Add FORTRAN, BASIC, COBOL, and other language
  7036.                            support
  7037.             3/88 32157     Add Documentation Index File editing
  7038.                            capability
  7039.             5/88 32207     Add capability to specify multiple individual
  7040.                            modules to DOC
  7041.             6/88 32240     Add capability for unique user-specified
  7042.                            source code format
  7043.             7/88 32275     Add on-line help program for all versions
  7044.             7/88 32290     MSDOS BRIEF support introduced
  7045.             8/88 32311     MSDOS Installation Kit introduced
  7046.             9/88 32348     Add capability to verify presence of entire
  7047.                            library source code
  7048.             9/88 32351     Add Documentation Index locked notification
  7049.                            feature
  7050.  
  7051.  
  7052.  
  7053.  
  7054.                                          123
  7055.  
  7056.  
  7057.                                        HISTORY
  7058.  
  7059.  
  7060.             DOCZ 1.4
  7061.  
  7062.             9/88 32326     UNIX version introduced, first built on AT&T
  7063.                            3B2, SysV.3.1
  7064.             9/88 32351     MSDOS network version introduced
  7065.             10/88 32356    UNIX sccs support introduced
  7066.             11/88 32387    DOCZ built on XENIX-286, Rel. 2.2.2
  7067.             11/88 32402    Add capability to specify multiple
  7068.                            Application Keywords
  7069.             12/88 32417    Add ASCII Transport facility for on-line help
  7070.                            libraries
  7071.  
  7072.  
  7073.             DOCZ 1.5
  7074.  
  7075.             1/89 32448     Totally revised and typeset DOCZ System
  7076.                            documentation
  7077.             1/89 32463     DOCZ built on Convergent S640, SysV.2.5
  7078.             1/89 32477     VMS VMSINSTAL Installation Kit introduced
  7079.             1/89 32478     Add ASCII Transport output for Documentation
  7080.                            Index File
  7081.             2/89 32479     Add capability to specify source code
  7082.                            language via file extensions
  7083.             2/89 32499     Add current date defaulting to all programs
  7084.             3/89 32515     Introduce DOCXLU utility
  7085.             3/89 32529     Unify CLI symbols and logical names across
  7086.                            all supported platforms
  7087.             4/89 32547     Add user specified and European date format
  7088.                            support
  7089.             4/89 32550     DOCZ transaction logging introduced
  7090.             5/89 32568     DOCZ built on Interactive 386, SysV.3.2
  7091.             6/89 32602     Source file directory specs made as sub-
  7092.                            directories
  7093.             6/89 32611     DOCLIS utility added
  7094.             8/89 32696     Added symbol substitution capability
  7095.             9/89 32689     Added CALCDATE utility
  7096.             10/89 32754    Added auto-load capability to DOCLIS
  7097.             11/89 32743    Added ASCII Transport capability to PSET
  7098.             12/89 32792    Added platform summary to full DOC output
  7099.             1/90 32819     Removed terminal dependence from DOCXLED and
  7100.                            PCODE
  7101.             1/90 32820     Added permuted description to full DOC output
  7102.             3/90 32886     Added universal support for version control
  7103.                            and alternate directory naming
  7104.             3/90 32897     Added reporting capability to DOCLOG
  7105.             4/90 32910     DOCZ built on AViiON/DGUX
  7106.             5/90 32939     DOCZ built on SUN/SPARC
  7107.  
  7108.  
  7109.             DOCZ 1.6
  7110.  
  7111.             10/90 33129    Added statistics logging
  7112.             10/90 33131    Added Variable TAB expansion
  7113.             11/90 33145    Added DOCHELP module description search
  7114.  
  7115.  
  7116.                                          124
  7117.  
  7118.  
  7119.                                        HISTORY
  7120.  
  7121.  
  7122.             12/90 33156    Added DOCMAN on-line User Manual
  7123.             1/91 33185     Added [z_opt] directory specification
  7124.                            override
  7125.             1/91 33190     DOCZ built on NCR 500, 700
  7126.             3/91 33238     Added FILLS, DETAB, and RETAB
  7127.             4/91 33270     Added DOCLEARN tutorial
  7128.             4/91 33285     DOCZ built on IBM RS6000/AIX
  7129.             8/91 33401     DOCZ built on SCO Unix
  7130.  
  7131.  
  7132.  
  7133.  
  7134.  
  7135.  
  7136.  
  7137.  
  7138.  
  7139.  
  7140.  
  7141.  
  7142.  
  7143.  
  7144.  
  7145.  
  7146.  
  7147.  
  7148.  
  7149.  
  7150.  
  7151.  
  7152.  
  7153.  
  7154.  
  7155.  
  7156.  
  7157.  
  7158.  
  7159.  
  7160.  
  7161.  
  7162.  
  7163.  
  7164.  
  7165.  
  7166.  
  7167.  
  7168.  
  7169.  
  7170.  
  7171.  
  7172.  
  7173.  
  7174.  
  7175.  
  7176.  
  7177.  
  7178.                                          125
  7179.  
  7180.  
  7181.                                       EXAMPLES
  7182.  
  7183.  
  7184.             Building a Documentation Library
  7185.  
  7186.             The following is a set of MSDOS commands that may be used to
  7187.             add a module named "CMDLINE" documented in the source file
  7188.             "CMDLINE.PAS," and place it in the "ULIB" library:
  7189.  
  7190.                  REM move source to source directory
  7191.                  COPY CMDLINE.PAS \DOCSRC\ULIB
  7192.                  REM add/update Documentation Index File
  7193.                  DOCXL ULIB CMDLINE CMDLINE.PAS
  7194.                  REM run the documentation
  7195.                  DOC ULIB CMDLINE
  7196.  
  7197.             The equivalent commands for VMS (without CMS):
  7198.  
  7199.                  ! move source to source directory
  7200.                  DOCROOT = F$EXTRACT(0,F$LENGTH(F$TRNLNM("DOCSRC"))-$
  7201.                  1,F$LOGICAL("DOCSRC"))
  7202.                  COPY CMDLINE.PAS 'DOCROOT'.ULIB]
  7203.                  ! add/update Documentation Index File
  7204.                  DOCXL ULIB CMDLINE CMDLINE.PAS
  7205.                  ! run the documentation
  7206.                  DOC ULIB CMDLINE
  7207.  
  7208.             The equivalent commands for VMS with CMS:
  7209.  
  7210.                  DOCROOT = F$EXTRACT(0,F$LENGTH(F$TRNLNM("DOCSRC"))-
  7211.                  1,F$LOGICAL("DOCSRC"))
  7212.                  CMS SET LIBRARY 'DOCROOT'.ULIB]
  7213.                  ! insert source in version control library
  7214.                  CMS CREATE ELEMENT CMDLINE.PAS <comment>
  7215.                  ! associate group name (optional)
  7216.                  CMS INSERT ELEMENT CMDLINE.PAS ULIB <comment>
  7217.                  ! add/update Documentation Index File
  7218.                  DOCXL ULIB CMDLINE CMDLINE.PAS
  7219.                  ! run the documentation
  7220.                  DOC ULIB CMDLINE
  7221.  
  7222.             The equivalent commands for UNIX (without SCCS):
  7223.  
  7224.                  # move source to source directory
  7225.                  mv cmdline.pas $DOCSRC/ULIB
  7226.                  # add/update Documentation Index File
  7227.                  docxl ulib cmdline cmdline.pas
  7228.                  # run the documentation
  7229.                  doc ulib cmdline
  7230.  
  7231.             The equivalent commands for UNIX with SCCS:
  7232.  
  7233.                  # update version control
  7234.                  delta $DOCSRC/ULIB/cmdline.pas
  7235.                  # add/update Documentation Index File
  7236.                  docxl ulib cmdline cmdline.pas
  7237.  
  7238.  
  7239.  
  7240.                                          127
  7241.  
  7242.  
  7243.                                       EXAMPLES
  7244.  
  7245.  
  7246.                  # run the documentation
  7247.                  doc ulib cmdline
  7248.  
  7249.             C Language
  7250.  
  7251.                  See strmcpy.c
  7252.  
  7253.             8086 Assembly
  7254.  
  7255.                  See strmcpy.asm
  7256.  
  7257.             VAX11 Assembly
  7258.  
  7259.                  See strmcpy.mar
  7260.  
  7261.             MSDOS Batch File
  7262.  
  7263.                  See move.bat
  7264.  
  7265.             BASIC Function
  7266.  
  7267.                  Requires a Comment String Mask in Configuration File
  7268.  
  7269.                  See fake.bas
  7270.  
  7271.             FORTRAN Function
  7272.  
  7273.                  Requires a Comment String Mask in Configuration File
  7274.  
  7275.                  See upcase.for
  7276.  
  7277.             Pascal Function
  7278.  
  7279.                  See cmdline.pas
  7280.  
  7281.             DCL Command File
  7282.  
  7283.                  See mailfile.com
  7284.  
  7285.  
  7286.             Bourne Shell Script
  7287.  
  7288.                  See cp_r.sh
  7289.  
  7290.             C Language Macro
  7291.  
  7292.                  See macro.h
  7293.  
  7294.             Dbase Language
  7295.  
  7296.                  Requires a Comment String Mask in Configuration File
  7297.  
  7298.                  gtsa.prg
  7299.  
  7300.  
  7301.  
  7302.                                          128
  7303.  
  7304.  
  7305.                                       EXAMPLES
  7306.  
  7307.  
  7308.             Perl Language
  7309.  
  7310.                  See frank.prl
  7311.  
  7312.             DOCZ Automation
  7313.  
  7314.                  See DOCREVS.COM
  7315.  
  7316.             DOCZ Automation
  7317.  
  7318.                  docrevs.sh
  7319.  
  7320.             DOCZ Automation
  7321.  
  7322.                  See DOCSTASH.COM
  7323.  
  7324.             DOCZ Automation
  7325.  
  7326.                  docstash
  7327.  
  7328.  
  7329.  
  7330.  
  7331.  
  7332.  
  7333.  
  7334.  
  7335.  
  7336.  
  7337.  
  7338.  
  7339.  
  7340.  
  7341.  
  7342.  
  7343.  
  7344.  
  7345.  
  7346.  
  7347.  
  7348.  
  7349.  
  7350.  
  7351.  
  7352.  
  7353.  
  7354.  
  7355.  
  7356.  
  7357.  
  7358.  
  7359.  
  7360.  
  7361.  
  7362.  
  7363.  
  7364.                                          129
  7365.  
  7366.  
  7367.                                       EXAMPLES
  7368.  
  7369.  
  7370.             A Sample DOCZ Library
  7371.  
  7372.  
  7373.             As an example for a real DOCZ application, a DOCZ reference
  7374.             manual containing six modules is contained in the file,
  7375.             CSUB.DOC, which was provided by the installation procedure
  7376.             in the DOCSRC directory.  The companion source files, also
  7377.             deposited in the DOCSRC directory, are:
  7378.  
  7379.                  delstr.asm
  7380.                  haspriv.c
  7381.                  insert.mar
  7382.                  juldate.c
  7383.                  macros.h
  7384.                  zero.c
  7385.  
  7386.             All listings are examples from real-life DOCZ libraries.
  7387.  
  7388.             This library happens to be a C function library, but the
  7389.             DOCZ System is not limited to any particular language.
  7390.  
  7391.  
  7392.  
  7393.  
  7394.  
  7395.  
  7396.  
  7397.  
  7398.  
  7399.  
  7400.  
  7401.  
  7402.  
  7403.  
  7404.  
  7405.  
  7406.  
  7407.  
  7408.  
  7409.  
  7410.  
  7411.  
  7412.  
  7413.  
  7414.  
  7415.  
  7416.  
  7417.  
  7418.  
  7419.  
  7420.  
  7421.  
  7422.  
  7423.  
  7424.  
  7425.  
  7426.                                          130
  7427.  
  7428.  
  7429.                                   TECHNICAL DETAILS
  7430.  
  7431.  
  7432.             Documentation Index Record Format
  7433.  
  7434.             The Documentation Index File, DOCXL.DAT, is a sequential,
  7435.             non-indexed flat file with fixed-length records containing
  7436.             both binary and ASCII data.  VMS version:  The file format
  7437.             is Stream_LF.
  7438.  
  7439.             Each record consists of:
  7440.  
  7441.                  11 character array and NUL terminator - library name
  7442.                  31 character array and NUL terminator - module name
  7443.  
  7444.                  MSDOS version:           88 character array and NUL
  7445.                  terminator - file spec
  7446.                  VMS and UNIX versions:   128 character array and NUL
  7447.                                           terminator - file spec
  7448.  
  7449.                  4 byte unsigned integer - time/date of last update (in
  7450.                                           Unix time)
  7451.                  2 byte unsigned integer - date of introduction
  7452.                  1 byte flag indicating a deleted record
  7453.                  1 byte pad
  7454.  
  7455.  
  7456.  
  7457.             Development Language
  7458.  
  7459.             All DOCZ programs were developed in the C Language, and draw
  7460.             on a portable C library developed in Assembly (VMS and
  7461.             MSDOS) and C.
  7462.  
  7463.  
  7464.  
  7465.  
  7466.  
  7467.  
  7468.  
  7469.  
  7470.  
  7471.  
  7472.  
  7473.  
  7474.  
  7475.  
  7476.  
  7477.  
  7478.  
  7479.  
  7480.  
  7481.  
  7482.  
  7483.  
  7484.  
  7485.  
  7486.  
  7487.  
  7488.                                          131
  7489.  
  7490.  
  7491.                                   TECHNICAL DETAILS
  7492.  
  7493.  
  7494.             Version Control Software Interface
  7495.  
  7496.                  VMS version:
  7497.  
  7498.                              (Code Management System) has been installed                      If CMS
  7499.                       on your VMS system, the DOCZ installation will
  7500.                       detect this (by searching for
  7501.                       SYS$SHARE:CMSSHR.EXE) and link to the CMS callable
  7502.                       interface.  If DOCSRC points to a CMS library
  7503.                       directory, modules will be fetched via CMS.  If
  7504.                       CMS is installed on your VMS system after the DOCZ
  7505.                       System is installed, DOCZ will have to be re-
  7506.                       installed.  The DOCZ System is designed to work
  7507.                       either with or without CMS.
  7508.  
  7509.                  UNIX version:
  7510.  
  7511.                       When a DOCZ module is requested by the DOC
  7512.                       program, the source file name is prepended with
  7513.                       "s." and a check for a file of that name is made.
  7514.                       If a file of that name exists in a sub-directory
  7515.                       of the DOCSRC directory or the path specified in
  7516.                       the Documentation Index File, an sccs "get" will
  7517.                       be performed to fetch the file from sccs.  If the
  7518.                       file name without the "s." prefix exists instead,
  7519.                       it will be used for input to the DOC program.
  7520.  
  7521.  
  7522.  
  7523.             Standard Error
  7524.  
  7525.             Error messages are always directed to Standard Error and may
  7526.             be re-directed (if supported by your operating system).
  7527.  
  7528.  
  7529.             8.5 x 11 Documentation Size
  7530.  
  7531.             In a recent Usenet survey concerning documentation size,
  7532.             MSDOS, VMS, and UNIX software developers expressed a
  7533.             preference for the standard 8.5 x 11 inch documentation size
  7534.             at a ratio of about six to one.  Hence, the DOCZ User Manual
  7535.             has been produced in a size that suits most of its users.
  7536.  
  7537.  
  7538.  
  7539.             Case in Module and Library Names
  7540.  
  7541.             In most environments in which DOCZ is used, case is
  7542.             significant in identifiers.  However, in large development
  7543.             environments name clashes are common.  Hence, the DOCZ
  7544.             convention to ignore case in identifiers has been adapted to
  7545.             decrease the chances for confusion and error in environments
  7546.             where DOCZ is likely to be used.
  7547.  
  7548.  
  7549.  
  7550.                                          132
  7551.  
  7552.  
  7553.                                   TECHNICAL DETAILS
  7554.  
  7555.  
  7556.             Some Implementation Requirements
  7557.  
  7558.                  Portability
  7559.  
  7560.                       One design criteria for the DOCZ System was an
  7561.                       ideal cross-platform development environment.
  7562.                       Even in single-platform shops, The DOCZ System
  7563.                       provides a complete automated code documentation
  7564.                       system.  But, in multi-platform development shops,
  7565.                       it is unique.
  7566.  
  7567.  
  7568.  
  7569.  
  7570.  
  7571.  
  7572.  
  7573.  
  7574.  
  7575.  
  7576.  
  7577.  
  7578.  
  7579.  
  7580.  
  7581.  
  7582.  
  7583.  
  7584.  
  7585.  
  7586.  
  7587.  
  7588.  
  7589.  
  7590.  
  7591.  
  7592.  
  7593.  
  7594.  
  7595.  
  7596.  
  7597.  
  7598.  
  7599.  
  7600.  
  7601.  
  7602.  
  7603.  
  7604.  
  7605.  
  7606.  
  7607.  
  7608.  
  7609.  
  7610.  
  7611.  
  7612.                                          133
  7613.  
  7614.  
  7615.                                 QUESTIONS AND ANSWERS
  7616.  
  7617.  
  7618.             How is the name "DOCZ" pronounced?
  7619.  
  7620.                  It sounds like "docs."
  7621.  
  7622.             How do I delete a module?
  7623.  
  7624.                  Run DOCXL with the /x option, naming the library and
  7625.                  module.  Or, run DOCXLED, find the record containing
  7626.                  the module, and change the deleted record field to Y.
  7627.                  You may then optionally remove the source from the DOCZ
  7628.                  directories, if this is the only module contained in
  7629.                  the source.
  7630.  
  7631.             Can I use any parameters other than those listed in the
  7632.             valid parameter table?
  7633.  
  7634.                  No.  DOCZ recognizes only the listed parameters and
  7635.                  considers any others to be typographical errors.
  7636.  
  7637.             Can I use the on-line help system for my Standard Library?
  7638.  
  7639.                  DOCZ does not limit you to modules for which you have
  7640.                  the source code.  Any program, subroutine, or command
  7641.                  file can be documented with DOCZ.  See the section on
  7642.                  "OTHER FEATURES:  Using DOCZ Without Source Code."
  7643.  
  7644.             How can I be sure that my DOCZ environment is properly set-
  7645.             up?
  7646.  
  7647.                  (1)  To verify the presence of required source files,
  7648.                       use:
  7649.  
  7650.                       DOCXLU /V
  7651.  
  7652.                  (2)  To examine symbol/logical name settings, options
  7653.                       specified in the Configuration File, and other
  7654.                       important information about the environment, use:
  7655.  
  7656.                       DOCXLU /S
  7657.  
  7658.                  (3)  To verify the integrity of documentation headers,
  7659.                       run DOC once for each library:
  7660.  
  7661.                       DOC <library name>
  7662.  
  7663.             Character attributes are not being utilized properly on my
  7664.             printer.
  7665.  
  7666.                  Insure that the PSET printer database has been
  7667.                  installed for your printer:  the PCODE utility is
  7668.                  provided for this.  If the PCODE utility does not list
  7669.                  your printer, use the PSET editor to manually describe
  7670.                  each of the sequences required by DOC.  See "SELECTING
  7671.                  OPTIONS:  The Printer Interface."
  7672.  
  7673.  
  7674.                                          135
  7675.  
  7676.  
  7677.                                 QUESTIONS AND ANSWERS
  7678.  
  7679.  
  7680.  
  7681.             What is the SSORT program that is installed with the MSDOS
  7682.             version?
  7683.  
  7684.                  It is a text sorting program with functionality
  7685.                  identical to the SORT program found on many MSDOS
  7686.                  systems.  DOCZ supplies its own sorting program because
  7687.                  there is no guarantee that the user will have the MSDOS
  7688.                  SORT program installed or that it can be found in their
  7689.                  search path.  In addition, some vendors supply a SORT
  7690.                  program that does not always work as expected.
  7691.  
  7692.             Can I customize headers and footers in the output
  7693.             documentation?
  7694.  
  7695.                  No.  They are fixed in format.  But page width, page
  7696.                  length, and margins can be adjusted to suite your
  7697.                  needs.  See "SELECTING OPTIONS:  The Printer
  7698.                  Interface."
  7699.  
  7700.             DOCZ is available on a limited number of hardware platforms.
  7701.             When can I expect it to be available on my favorite
  7702.             platform?
  7703.  
  7704.                  It depends on how cooperative the platform vendor is,
  7705.                  the expense of obtaining the platform, and the level of
  7706.                  demand.  You should contact Software Toolz with a
  7707.                  request to support the platform of your choice.
  7708.  
  7709.             Why is the performance of DOCZ under VMS less than whizzy?
  7710.  
  7711.                  Because DOCZ does not make direct calls to VMS system
  7712.                  services (such as RMS).  This makes the source code for
  7713.                  DOCZ much easier to port to other platforms.
  7714.  
  7715.             Do I need to be concerned about file locking?
  7716.  
  7717.                  The Documentation Index File is the only file in the
  7718.                  DOCZ system in which the same record could potentially
  7719.                  be updated simultaneously by more than one process.  In
  7720.                  multi-user versions of DOCZ it is locked for update for
  7721.                  all platforms (including MSDOS if SHARE is installed).
  7722.  
  7723.             My documentation does not look at all like the samples!
  7724.  
  7725.                  See "FORMATTING SOURCE CODE:  The Parameters for
  7726.                  Documentation Headers."  Some parameters require
  7727.                  single-word arguments, or dates, or arguments on the
  7728.                  same line as the parameter.  Most output documentation
  7729.                  problems arise from a violation of these requirements.
  7730.  
  7731.  
  7732.  
  7733.  
  7734.  
  7735.  
  7736.                                          136
  7737.  
  7738.  
  7739.                                 QUESTIONS AND ANSWERS
  7740.  
  7741.  
  7742.             If I enable logging, won't the log grow endlessly?
  7743.  
  7744.                  No.  Every time a program logs to the DOCZ log, the
  7745.                  first entry in the log is checked for age.  If its age
  7746.                  is older than the limit in effect, the log is
  7747.                  "cleaned."  This operation may occur no more than once
  7748.                  each day.  See "SELECTING OPTIONS:  Transaction
  7749.                  Logging."
  7750.  
  7751.             Can I edit the DOCZ log directly using a text editor?
  7752.  
  7753.                  Yes, as long as the entries remain in chronological
  7754.                  order (for cleaning purposes) and the fields are not
  7755.                  rearranged.
  7756.  
  7757.             Can I edit the Documentation Index File directly using a
  7758.             text editor?
  7759.  
  7760.                  No.  The Documentation Index File is binary, and you
  7761.                  can use the DOCXLED program to modify it.  You can
  7762.                  produce an ASCII Transport File using DOCXLU and that
  7763.                  file can be edited directly with a text editor (taking
  7764.                  care not to rearrange the fields).
  7765.  
  7766.             Can I invoke DOC once to print all reference manuals?
  7767.  
  7768.                  No.  DOC must be run once for each library name.
  7769.  
  7770.             I built a help library on one platform and transported it to
  7771.             another.  After I ran DOCHBLD against the transported file,
  7772.             DOCHELP displayed garbage.
  7773.  
  7774.                  It is quite possible that your transport mechanism
  7775.                  modified the transport file in some way.  Be sure that
  7776.                  your transport mechanism fixes end-of-line (if
  7777.                  necessary) and does not affect the file format in any
  7778.                  way.  The VMS version of DOCHBLD requires Stream_LF
  7779.                  files, but if any other format is used for input, it
  7780.                  will be automatically converted to Stream_LF by
  7781.                  DOCHBLD.
  7782.  
  7783.             On my VMS system, the default text file format is VAR, but
  7784.             DOCZ requires Stream_LF.
  7785.  
  7786.                  These files will be automatically converted when needed
  7787.                  by either DOC or DOCHBLD for input.  CMS does not care
  7788.                  which format is used.  Some performance losses will be
  7789.                  noticed if conversions are required.
  7790.  
  7791.  
  7792.  
  7793.  
  7794.  
  7795.  
  7796.  
  7797.  
  7798.                                          137
  7799.  
  7800.  
  7801.                                 QUESTIONS AND ANSWERS
  7802.  
  7803.  
  7804.             A DOCZ program blew-up when I gave it a wild-card argument
  7805.             in my Unix version.
  7806.  
  7807.                  In some cases, DOCZ programs require wildcard arguments
  7808.                  passed to be quoted so that the program can expand the
  7809.                  wildcards instead of the Shell.  See the documentation
  7810.                  for the program.
  7811.  
  7812.             I purchased a single-user version of DOCZ, but now several
  7813.             people want to use it.
  7814.  
  7815.                  Your license type can be converted to multi-user with a
  7816.                  credit for your single-user license.  Contact Software
  7817.                  Toolz.  If your distribution media required a surcharge
  7818.                  (tape), it may be returned to Software Toolz for a
  7819.                  credit when new distribution media is issued to you.
  7820.  
  7821.             I purchased DOCZ for one platform, and I want to license
  7822.             DOCZ on another platform in addition.
  7823.  
  7824.                  Licenses for additional platforms are available at a
  7825.                  discount after the first platform is licensed.
  7826.  
  7827.             Columns are out of alignment in my documentation and on-line
  7828.             help libraries.
  7829.  
  7830.                  Use the "Variable TAB" option in the Configuration File
  7831.                  to match TAB expansion to your source code editor.
  7832.  
  7833.             I would like to use the PSET program with my other
  7834.             utilities.
  7835.  
  7836.                  PSET, and the other DOCZ utilities, PCODE, REFORMAT,
  7837.                  FILLS, DETAB, RETAB, and CALCDATE, are independent of
  7838.                  the DOCZ environment (they do not use DOCZ environment
  7839.                  variables or DOCZ directory naming conventions) and are
  7840.                  therefore usable with your other utilities.
  7841.  
  7842.             Why is my disk "thrashing" when I first invoke the DOC
  7843.             program?
  7844.  
  7845.                  The DOC program uses the PSET database, PSET.DAT.  DOC
  7846.                  automatically searches for the file using your search
  7847.                  path.  If your search path is long or if the
  7848.                  directories in your search path (that are searched
  7849.                  before PSET.DAT is found) contain many files, the
  7850.                  search will produce "thrashing."
  7851.  
  7852.             There are a few features I would like to see added to DOCZ.
  7853.  
  7854.  
  7855.  
  7856.  
  7857.  
  7858.  
  7859.  
  7860.                                          138
  7861.  
  7862.  
  7863.                                 QUESTIONS AND ANSWERS
  7864.  
  7865.  
  7866.             Can I make a few suggestions?
  7867.  
  7868.                  Almost 100% of customer suggestions are incorporated
  7869.                  into new releases of DOCZ.  Some enhancements may be
  7870.                  made immediately, while others may have to be put-off
  7871.                  for a later release.  ALL suggestions are taken
  7872.                  seriously!
  7873.  
  7874.             Where is Ball Ground, Georgia?
  7875.  
  7876.                  About 40 miles due north of Atlanta.
  7877.  
  7878.  
  7879.  
  7880.  
  7881.  
  7882.  
  7883.  
  7884.  
  7885.  
  7886.  
  7887.  
  7888.  
  7889.  
  7890.  
  7891.  
  7892.  
  7893.  
  7894.  
  7895.  
  7896.  
  7897.  
  7898.  
  7899.  
  7900.  
  7901.  
  7902.  
  7903.  
  7904.  
  7905.  
  7906.  
  7907.  
  7908.  
  7909.  
  7910.  
  7911.  
  7912.  
  7913.  
  7914.  
  7915.  
  7916.  
  7917.  
  7918.  
  7919.  
  7920.  
  7921.  
  7922.                                          139
  7923.  
  7924.  
  7925.                                     INSTALLATION
  7926.  
  7927.  
  7928.             Basic Installation
  7929.  
  7930.             The DOCZ System installation is very similar on all of the
  7931.             supported platforms, and consists of the following basic
  7932.             steps:
  7933.  
  7934.                  (1)  Provide the DOCZ programs in your search path, or
  7935.                       (in the VMS version) define the DOCZ programs as
  7936.                       foreign commands.
  7937.  
  7938.                  (2)  Create the DOCSRC default source root directory.
  7939.  
  7940.                  (3)  Create a sub-directory (to DOCSRC) for each
  7941.                       library to be documented with the name of the sub-
  7942.                       directory begin the same as the library name (in
  7943.                       upper case).
  7944.  
  7945.                  (4)  Create the DOCREF directory.
  7946.  
  7947.                  (5)  In the VMS version, create the DOCDAT directory.
  7948.  
  7949.                  (6)     vide the DOCZ symbols/logical names for DOCZ                      Pro
  7950.                       users.
  7951.  
  7952.             All of the above steps are provided in the installation
  7953.             procedure that is part of the DOCZ Installation Kit.
  7954.  
  7955.             Directories to which DOCZ files are installed may, in all
  7956.             cases, be specified by the installer.  Conventional default
  7957.             directory names are supplied, but these can be overridden
  7958.             during the installation.  Directories that do not already
  7959.             exist (and their parent directories) will be created.
  7960.  
  7961.  
  7962.  
  7963.             Re-installation/Update
  7964.  
  7965.             The DOCZ installation procedure will check for the presence
  7966.             of configuration files that may already exist in the
  7967.             directories to which you are installing.  Files will most
  7968.             likely already exist when re-installing or updating DOCZ.
  7969.             In this case, the installation procedure will warn you about
  7970.             the condition, and ask you for permission to overwrite those
  7971.             files.
  7972.  
  7973.  
  7974.  
  7975.  
  7976.  
  7977.  
  7978.  
  7979.  
  7980.  
  7981.  
  7982.  
  7983.  
  7984.                                          141
  7985.  
  7986.  
  7987.                                     INSTALLATION
  7988.  
  7989.  
  7990.             Enabling Extended DOCZ Features
  7991.  
  7992.             Optional steps for utilizing extended features of the DOCZ
  7993.             system are:
  7994.  
  7995.                  (1)  Provide a Configuration File in the DOCREF
  7996.                       directory that specifies automatic options.
  7997.  
  7998.                  (2)  Build a printer feature database using PCODE
  7999.                       and/or PSET, and specify the printer features to
  8000.                       use in the Configuration File.
  8001.  
  8002.                  (3)  Enable/disable transaction logging in the
  8003.                       Configuration File (enabled for 30 day log
  8004.                       retention by default).
  8005.  
  8006.                  (4)  Automate Fix, Revision, and Introduction Notices
  8007.                       via command files.
  8008.  
  8009.                  (5)  Provide library introduction;s (cover sheets) in
  8010.                       the DOCREF directory.
  8011.  
  8012.                  (6)  Bridge cross-platform development environments
  8013.                       using DOCZ ASCII Transport Files.
  8014.  
  8015.                  (7)  Build an on-line help library with DOCHBLD, to be
  8016.                       viewed by users using the DOCHELP utility.
  8017.  
  8018.                  (8)  Use version control software supported by the DOCZ
  8019.                       System to manage source code.
  8020.  
  8021.                  (9)  Edit the Configuration File to use non-supported
  8022.                       directory naming and version control software.
  8023.  
  8024.  
  8025.  
  8026.  
  8027.  
  8028.  
  8029.  
  8030.  
  8031.  
  8032.  
  8033.  
  8034.  
  8035.  
  8036.  
  8037.  
  8038.  
  8039.  
  8040.  
  8041.  
  8042.  
  8043.  
  8044.  
  8045.  
  8046.                                          142
  8047.  
  8048.  
  8049.                                     INSTALLATION
  8050.  
  8051.  
  8052.             Examples and Support Files
  8053.  
  8054.                  getstart.doc   guide to getting started quickly
  8055.                  dochead.txt    generic prototype DOCZ header
  8056.                  dochead.cb     Brief macro to insert DOCZ header into
  8057.                                 source code
  8058.                  dochelp.m      Brief macro for the DOCHELP utility
  8059.                  dochelp.txt    ASCII Transport File for DOCHBLD utility
  8060.                                 to build a help library for the DOCZ
  8061.                                 system
  8062.                  fake.bas       BASIC source example
  8063.                  move.bat       MSDOS command file source example
  8064.                  cmdline.pas    Pascal source example
  8065.                  strmcpy.asm    8086 Assembly source example
  8066.                  strmcpy.mar        1 Assembly source example                                VAX1
  8067.                  mailfile.com   VAX-DCL source example
  8068.                  strmcpy.c      C source example
  8069.                  cp_r.sh        UNIX Shell source example
  8070.                  upcase.for     FORTRAN source example
  8071.                  macro.h        C macro example
  8072.                  gtsa.prg       Dbase example
  8073.                  frank.prl      Perl example
  8074.                  docstash       UNIX SCCS automation (Bourne Shell)
  8075.                  docstash.com   VMS CMS automation (DCL)
  8076.                  macros.h       Example used in sample C function
  8077.                                 library
  8078.                  haspriv.c      Example used in sample C function
  8079.                                 library
  8080.                  insert.mar     Example used in sample C function
  8081.                                 library
  8082.                  juldate.c      Example used in sample C function
  8083.                                 library
  8084.                  delstr.asm     Example used in sample C function
  8085.                                 library
  8086.                  c.txt          C Standard Library on-line help
  8087.                                 transport file
  8088.                  zero.c         Example used in sample C function
  8089.                                 library
  8090.                  UPDATE.DOC     This is an optional file that contains
  8091.                                 updates to the printed DOCZ User Manual.
  8092.                                 If supplied, it will be deposited in the
  8093.                                 DOCREF directory during installation.
  8094.  
  8095.  
  8096.  
  8097.  
  8098.  
  8099.  
  8100.  
  8101.  
  8102.  
  8103.  
  8104.  
  8105.  
  8106.  
  8107.  
  8108.                                          143
  8109.  
  8110.  
  8111.                                     INSTALLATION
  8112.  
  8113.  
  8114.             MSDOS VERSION
  8115.  
  8116.             MSDOS Version Minimum Requirements
  8117.  
  8118.                  o    You must run MSDOS version 2.0 or higher and have
  8119.                       at least 256k of memory.
  8120.  
  8121.  
  8122.             Getting Started with the MSDOS Version
  8123.  
  8124.                  (1)  Send in the Registration
  8125.  
  8126.                  (2)  Copy the distribution media, and run the INSTALL
  8127.                       program with the disk containing the INSTALL
  8128.                       program as the default device.
  8129.  
  8130.                  (3)  Answer the questions provided by the installation
  8131.                       program.
  8132.  
  8133.                  (4)  Please read the User Manual before calling
  8134.                       Software Toolz with questions.
  8135.  
  8136.  
  8137.             MSDOS Version Installation Procedure
  8138.  
  8139.             The Installation Program, INSTALL.EXE, will perform all
  8140.             necessary steps for the installation of DOCZ, or you may
  8141.             choose to customize the installation yourself.  In any
  8142.             event, you should run the Installation Program first as it
  8143.             performs a test on your MSDOS system for adequate memory and
  8144.             system parameters.
  8145.  
  8146.             The Installation Program features extensive help messages
  8147.             that will guide you through an installation.  The
  8148.             installation is self-explanatory and will not be documented
  8149.             here.
  8150.  
  8151.             DOCZ requires that two directories be set aside for use by
  8152.             the DOC programs.  These directories will be used to store
  8153.             the Documentation Index File, and may be used to store all
  8154.             or some of your source files containing module
  8155.             documentation.  You can establish where those directories
  8156.             are in either of two ways:
  8157.  
  8158.                  (1)  Create directories named \DOCSRC and \DOCREF on
  8159.                       the device that you wish to use the DOCZ
  8160.                       directories.
  8161.  
  8162.                  (2)  Use any directories of your choice and equate the
  8163.                       CLI (command-language-interpreter) symbol, DOCSRC
  8164.                       to the directory name of the default source
  8165.                       directory and DOCREF to the name of the
  8166.                       Documentation Reference Directory.  In your
  8167.                       AUTOEXEC.BAT, you would add the lines,
  8168.  
  8169.  
  8170.                                          144
  8171.  
  8172.  
  8173.                                     INSTALLATION
  8174.  
  8175.  
  8176.  
  8177.                            SET DOCSRC=<directory name>
  8178.                            SET DOCREF=<directory name>
  8179.  
  8180.                       For example:
  8181.  
  8182.                            SET DOCSRC=C:\LIBRARY\SOURCE
  8183.                            SET DOCREF=C:\LIBRARY\INDEX
  8184.  
  8185.             There will be one sub-directory to the Default Source
  8186.             Directory (DOCSRC) per library, and the name of the sub-
  8187.             directory will be the same as the name of the library.
  8188.  
  8189.             When defining CLI symbols, insure that your system has
  8190.             sufficient "environment space."  Later versions of MSDOS
  8191.             allow increasing the environment space via an option in
  8192.             CONFIG.SYS.  Earlier versions of MSDOS can achieve this only
  8193.             through patching of COMMAND.COM.
  8194.  
  8195.             DOCZ programs currently limit the number of modules allowed
  8196.             in a single library to approximately 1000.  The maximum
  8197.             number of modules that your system memory allows is
  8198.             displayed when you run the DOC program.  This limitation is
  8199.             established to allow DOCZ to run on a PC with only 256k of
  8200.             memory.  Note that this limitation applies only to the
  8201.             number of modules in one library.  There is no theoretical
  8202.             limit on the total number of modules that may be contained
  8203.             in the Documentation Index and no limit on the number of
  8204.             libraries you may choose to use.
  8205.  
  8206.             The bldocz.bat command file is provided to build the sample
  8207.             CSUB library from the sample sources.
  8208.  
  8209.  
  8210.             Files in a Working MSDOS DOCZ System
  8211.  
  8212.                  DOC.EXE                  DOC program
  8213.                  DOCXL.EXE                DOCXL program
  8214.                  DOCXLU.EXE               Documentation Index File
  8215.                                           utility
  8216.                  DOCXLED.EXE              DOCXLED program
  8217.                  DOCHBLD.EXE              Help library build utility
  8218.                  DOCHELP.EXE              On-line help program
  8219.                  DOCGET.EXE               DOCZ source file parameter
  8220.                                           retrieval
  8221.                  DOCLOG.EXE               DOCZ log examination utility
  8222.                  DOCLIS.EXE               Source file scanning utility
  8223.                  DOCMAN.EXE               DOCZ on-line User Manual
  8224.                  DOCLEARN.EXE             DOCZ on-line tutorial
  8225.                  CALCDATE.EXE             Date calculation utility
  8226.                  FILLS.EXE                Space/tab file test utility
  8227.                  RETAB.EXE                Convert spaces to tabs utility
  8228.                  DETAB.EXE                Convert tabs to spaces utility
  8229.  
  8230.  
  8231.  
  8232.                                          145
  8233.  
  8234.  
  8235.                                     INSTALLATION
  8236.  
  8237.  
  8238.                  PSET.EXE                 PSET utility for printer
  8239.                                           interface
  8240.                  SSORT.EXE                SORT utility used by DOC
  8241.                  DOCZ_SYM.BAT             defines DOCZ environment
  8242.                                           symbols
  8243.                  PSET.DAT                 printer database produced by
  8244.                                           PCODE and maintained by the
  8245.                                           PSET utility
  8246.                  %DOCREF%DOCXL.DAT        the Documentation Index
  8247.                                           produced by the DOCXL program
  8248.                  %DOCREF%DOCZ.CFG         the optional DOCZ
  8249.                                           Configuration File
  8250.                  %DOCREF%DOCHELP.HLP      on-line help library for
  8251.                                           DOCHELP
  8252.                  %DOCSRC%BLDOCZ.BAT           ds the sample library                                          buil
  8253.  
  8254.  
  8255.             If installation of the examples is selected during the
  8256.             installation procedure, the examples are copied to the
  8257.             DOCSRC directory.
  8258.  
  8259.  
  8260.  
  8261.  
  8262.  
  8263.  
  8264.  
  8265.  
  8266.  
  8267.  
  8268.  
  8269.  
  8270.  
  8271.  
  8272.  
  8273.  
  8274.  
  8275.  
  8276.  
  8277.  
  8278.  
  8279.  
  8280.  
  8281.  
  8282.  
  8283.  
  8284.  
  8285.  
  8286.  
  8287.  
  8288.  
  8289.  
  8290.  
  8291.  
  8292.  
  8293.  
  8294.                                          146
  8295.  
  8296.  
  8297.                                     INSTALLATION
  8298.  
  8299.  
  8300.             VMS VERSION
  8301.  
  8302.             VMS Version Minimum Requirements
  8303.  
  8304.                  o    You must run VMS version 4.5 or higher.
  8305.  
  8306.                  o    VAXCRTL run-time library is required (furnished
  8307.                       with 4.4 and later).
  8308.  
  8309.  
  8310.             Getting Started with the VMS Version
  8311.  
  8312.                  (1)  Send in the Registration
  8313.  
  8314.                  (2)  Run the VMS installation command file, VMSINSTAL
  8315.  
  8316.                  (3)  Answer the questions provided by the installation
  8317.                       kit.
  8318.  
  8319.                  (4)  Please read the User Manual before calling
  8320.                       Software Toolz with questions.
  8321.  
  8322.  
  8323.             VMS Version Installation Procedure
  8324.  
  8325.             The Installation Procedure will perform all necessary steps
  8326.             for the installation of DOCZ, or you may choose to customize
  8327.             the installation yourself.
  8328.  
  8329.             To perform a DOCZ installation, run VMSINSTAL with the
  8330.             distribution media inserted in device:
  8331.  
  8332.                  @SYS$UPDATE:VMSINSTAL DOCZ016 <device name>
  8333.  
  8334.             This installation should be performed by the System Manager
  8335.             of the VAX on which you plan to install DOCZ.  The procedure
  8336.             is self-explanatory, and installing DOCZ is trivial if you
  8337.             are satisfied by the defaults provided by the installation
  8338.             procedure.  The only question asked by the procedure is the
  8339.             device on which DOCZ directories will be created.  The
  8340.             default for this device is $DISK1 (logical name), which is
  8341.             the system disk in some VMS systems.  A logical name may be
  8342.             used for this device, but it must be a permanent logical
  8343.             name.
  8344.  
  8345.  
  8346.  
  8347.  
  8348.  
  8349.  
  8350.  
  8351.  
  8352.  
  8353.  
  8354.  
  8355.  
  8356.                                          147
  8357.  
  8358.  
  8359.                                     INSTALLATION
  8360.  
  8361.  
  8362.             DOCZ requires that three directories be set aside for use by
  8363.             the DOC programs.  One will be used as the Default Source
  8364.             Directory serving a the root directory to sub-directories
  8365.             containing source files with module documentation, another
  8366.             will contain the Documentation Index File and other
  8367.             reference files, and the third will be used to contain
  8368.             several data files used by DOCZ.  Technically, the three
  8369.             directories may be the same physical directory, except when
  8370.                 is used to control the source code.  The installation            CMS
  8371.             procedure will create the required directories for you.
  8372.             Three logical names must be declared that will point to the
  8373.             three directories required:
  8374.  
  8375.             There will be one sub-directory to the Default Source
  8376.             Directory per library, and the name of the sub-directory
  8377.             will be the same as the name of the library.
  8378.  
  8379.                  DOCSRC         default source directory
  8380.                  DOCREF         directory to contain reference files
  8381.                  used by DOCZ
  8382.                  DOCDAT         data files for use by DOC
  8383.  
  8384.             These logical names should not be rooted.
  8385.  
  8386.             These may be permanent or process logical names, but must be
  8387.             defined for the users of DOCZ.  The installation procedure
  8388.             generates a command file, SYS$MANAGER:DOCZ_LOGIN.COM, that
  8389.             defines the logical names as process logical names and
  8390.             defines the DOCZ program names as DCL foreign commands.
  8391.             This command file could be provided for DOCZ users in any of
  8392.             three ways:
  8393.  
  8394.                  (1)  Calling SYS$MANAGER:DOCZ_LOGIN from SYS$SYLOGIN,
  8395.                       which will define DOCZ symbols and logical names
  8396.                       for all users who log in.
  8397.  
  8398.                  (2)  Instruct user to call SYS$MANAGER:DOCZ_LOGIN from
  8399.                       their own SYS$LOGIN:LOGIN.COM.
  8400.  
  8401.                  (3)  Modify DOCZ users' UAF, so that
  8402.                       LGICMD=SYS$MANAGER:DOCZ_LOGIN.  If this method is
  8403.                       chosen, do not forget to add:
  8404.  
  8405.                            $ IF F$SEARCH("SYS$LOGIN:LOGIN.COM") .EQS. ""
  8406.                            THEN EXIT
  8407.                            $ @SYS$LOGIN:LOGIN
  8408.                            $ EXIT
  8409.  
  8410.                       to SYS$MANAGER:DOCZ_LOGIN.COM so that the user's
  8411.                       LOGIN.COM will be run before DOCZ_LOGIN exits.
  8412.  
  8413.             The installation procedure does not make any of the above
  8414.             modifications:  this step requires a manual change that will
  8415.             have to be made by the VMS system administrator.
  8416.  
  8417.  
  8418.                                          148
  8419.  
  8420.  
  8421.                                     INSTALLATION
  8422.  
  8423.  
  8424.  
  8425.             The installation procedure also creates a start-up file,
  8426.             SYS$MANAGER:DOCZ_STARTUP.COM, which must be called from your
  8427.             system start-up procedure (SYSTARTUP.COM in pre-version 5
  8428.             VMS, and SYSTARTUP_V5.COM in post-version 5 VMS).  The
  8429.             installation procedure does not attempt to modify the system
  8430.             start-up:  this step requires a manual change that will have
  8431.             to be made by the system administrator.
  8432.  
  8433.             The provision to allow CMS (Code Management System) to
  8434.             manage the code has been built-in to DOCZ.  If CMS is
  8435.             installed on your VAX, the installation procedure will
  8436.             detect its presence and link the DOCZ programs to it.  See
  8437.             also "OTHER FEATURES:  Directory Layout."
  8438.  
  8439.             DOCZ programs currently limit the number of modules allowed
  8440.             in a single library to 1024.  This limitation is established
  8441.             merely to assume a reasonable maximum for purposes of memory
  8442.             allocation.   Note that this limitation applies only to the
  8443.             number of modules in one library.  There is no theoretical
  8444.             limit on the total number of modules that may be contained
  8445.             in the Documentation Index and no limit on the number of
  8446.             libraries you choose to use.
  8447.  
  8448.             The DOCXL and DOCXLU programs must be installed with the
  8449.             SYSLCK privilege as they take out an exclusive write system-
  8450.             wide lock using the VMS lock manager facility.  This
  8451.             installation will be performed by
  8452.             SYS$MANAGER:DOCZ_STARTUP.COM.  None of the other DOCZ
  8453.             programs need be installed with privileges.  Any of the DOCZ
  8454.             programs may be installed SHARED.
  8455.  
  8456.             If DOCZ is installed on a VMS system not having CMS, and CMS
  8457.             is installed at a later time; the DOCZ System must be
  8458.             reinstalled to be able to make use of CMS.  A re-
  8459.             installation will not effect any DOCZ files built by your
  8460.             DOCZ System modified or created since an earlier
  8461.             installation (Documentation Index File, error log, etc.).
  8462.  
  8463.  
  8464.             Files in a Working VMS DOCZ System
  8465.  
  8466.                  SYS$SYSTEM:DOC.EXE            DOC program
  8467.                  SYS$SYSTEM:DOCXL.EXE          DOCXL program
  8468.                  SYS$SYSTEM:PCODE.EXE          the PCODE utility
  8469.                  SYS$SYSTEM:DOCXLU.EXE         Documentation Index File
  8470.                                                utility
  8471.                  SYS$SYSTEM:DOCXLED.EXE        DOCXLED utility program
  8472.                  SYS$SYSTEM:DOCHBLD.EXE        Help library build
  8473.                                                utility
  8474.                  SYS$SYSTEM:DOCHELP.EXE        On-line help program
  8475.                  SYS$SYSTEM:DOCGET.EXE         DOCZ source file
  8476.                                                parameter retrieval
  8477.  
  8478.  
  8479.  
  8480.                                          149
  8481.  
  8482.  
  8483.                                     INSTALLATION
  8484.  
  8485.  
  8486.                  SYS$SYSTEM:DOCLOG.EXE         DOCZ log examination
  8487.                                                utility
  8488.                  SYS$SYSTEM:DOCLIS.EXE         Source file scanning
  8489.                                                utility
  8490.                  SYS$SYSTEM:DOCMAN.EXE         DOCZ on-line User Manual
  8491.                  SYS$SYSTEM:DOCLEARN.EXE       DOCZ on-line tutorial
  8492.                  SYS$SYSTEM:CALCDATE.EXE       Date calculation utility
  8493.                  SYS$SYSTEM:FILLS.EXE          Space/tab file test
  8494.                                                utility
  8495.                  SYS$SYSTEM:RETAB.EXE          Convert spaces to tabs
  8496.                                                utility
  8497.                  SYS$SYSTEM:DETAB.EXE          Convert tabs to spaces
  8498.                                                utility
  8499.                  SYS$SYSTEM:PSET.EXE           PSET utility for printer
  8500.                                                interface
  8501.                  DOCDAT:BANNER.DAT             font file for banners
  8502.                                                printed on the
  8503.                                                documentation
  8504.                  DOCDAT:PCODE.DAT              printer database for
  8505.                                                PCODE
  8506.                  DOCDAT:PSET.DAT               printer database produced
  8507.                                                by PCODE and maintained
  8508.                                                by the PSET utility
  8509.                  DOCREF:DOCXL.DAT              the Documentation Index
  8510.                                                produced by the DOCXL
  8511.                                                program
  8512.                  DOCREF:DOCZ.CFG               the optional DOCZ
  8513.                                                Configuration File
  8514.                  DOCREF:DOCHELP.HLP            On-line help file for
  8515.                  DOCHELP
  8516.  
  8517.             The examples are copied to the SYS$EXAMPLES directory.
  8518.  
  8519.  
  8520.  
  8521.  
  8522.  
  8523.  
  8524.  
  8525.  
  8526.  
  8527.  
  8528.  
  8529.  
  8530.  
  8531.  
  8532.  
  8533.  
  8534.  
  8535.  
  8536.  
  8537.  
  8538.  
  8539.  
  8540.  
  8541.  
  8542.                                          150
  8543.  
  8544.  
  8545.                                     INSTALLATION
  8546.  
  8547.  
  8548.             UNIX VERSION
  8549.  
  8550.             UNIX Version Minimum Requirements
  8551.  
  8552.                  o    You must run UNIX System V, version 3 or higher.
  8553.  
  8554.  
  8555.  
  8556.             Getting Started with the UNIX Version
  8557.  
  8558.                  (1)  Send in the Registration
  8559.  
  8560.                  (2)  Run the Unix installation script
  8561.  
  8562.                  (3)  Answer the questions provided by the Installation
  8563.                       Kit.
  8564.  
  8565.                  (4)  Please read the User Manual before calling
  8566.                       Software Toolz with questions.
  8567.  
  8568.  
  8569.             UNIX Version Installation Procedure
  8570.  
  8571.             Whenever possible, the DOCZ System installation kit will
  8572.             support the automated installation facility provided by the
  8573.             native Unix system.  For those Unixes that do not provide an
  8574.             automated installation facility, the DOCZ installation
  8575.             procedure will accompany the distribution media.
  8576.  
  8577.             The Installation Procedure will perform all necessary steps
  8578.             for the installation of DOCZ, or you may choose to customize
  8579.             the installation yourself.  The procedure does not require
  8580.             root privileges unless you wish to place the DOCZ files in
  8581.             system directories which have protection.  The installation
  8582.             procedure will ask for the names of directories into which
  8583.             the DOCZ files will be placed.  If the directories do not
  8584.             already exist, they will be created.  Default standard Unix
  8585.             directory names are supplied, but the installer may specify
  8586.             any directory name.  If the DOCZ installation will overwrite
  8587.             any files with the same names as DOCZ files, those files
  8588.             currently on the system are moved to /usr/tmp.
  8589.  
  8590.             DOCZ requires that two directories be set aside for use by
  8591.             the DOCZ programs.  One will be used as the default
  8592.             directory for the storage of source files containing module
  8593.             documentation, another will contain the Documentation Index
  8594.             File and other reference files.  Technically, the
  8595.             directories may be the same physical directory.  The
  8596.             installation procedure will create the required directories
  8597.             for you.
  8598.  
  8599.  
  8600.  
  8601.  
  8602.  
  8603.  
  8604.                                          151
  8605.  
  8606.  
  8607.                                     INSTALLATION
  8608.  
  8609.  
  8610.             You can establish where those directories are in either of
  8611.             two ways:
  8612.  
  8613.                  (1)         directories named ../docsrc and ../docref                      Create
  8614.                       parallel to your working directory.
  8615.  
  8616.                  (2)  (Recommended) Use any directories of your choice
  8617.                       and equate the CLI (command-language-interpreter)
  8618.                       symbol, DOCSRC to the directory name of the
  8619.                       Default Source Directory, DOCREF to the name of
  8620.                       the Documentation Reference Directory.  The
  8621.                       symbols may point to the same directory.  In your
  8622.                       .profile or /etc/profile, you would add the lines,
  8623.  
  8624.                            DOCSRC=<directory name>
  8625.                            DOCREF=<directory name>
  8626.                            export DOCSRC DOCREF
  8627.  
  8628.                       For example:
  8629.  
  8630.                            DOCSRC=/usr/program/source
  8631.                            DOCREF=/usr/program/index
  8632.                            export DOCSRC DOCREF
  8633.  
  8634.             There will be one sub-directory to the Default Source
  8635.             Directory per library, and the name of the sub-directory
  8636.             will be the same as the name of the library (in upper case).
  8637.  
  8638.             DOCZ programs currently limit the number of modules allowed
  8639.             in a single library to 1024.  This limitation is established
  8640.             merely to assume a reasonable maximum for purposes of memory
  8641.             allocation.  Note that this limitation applies only to the
  8642.             number of modules in one library.  There is no theoretical
  8643.             limit on the total number of modules that may be contained
  8644.             in the Documentation Index and no limit on the number of
  8645.             libraries you choose to use.
  8646.  
  8647.             The bldocz script is provided to build the sample CSUB
  8648.             library from the sample sources.
  8649.  
  8650.  
  8651.  
  8652.  
  8653.  
  8654.  
  8655.  
  8656.  
  8657.  
  8658.  
  8659.  
  8660.  
  8661.  
  8662.  
  8663.  
  8664.  
  8665.  
  8666.                                          152
  8667.  
  8668.  
  8669.                                     INSTALLATION
  8670.  
  8671.  
  8672.             Files in a Working UNIX DOCZ System
  8673.  
  8674.                  doc                 DOC program
  8675.                  docxl               DOCXL program
  8676.                  pcode               the PCODE utility
  8677.                  pset                PSET utility for printer interface
  8678.                  docxlu              Documentation Index File utility
  8679.                  docxled             DOCXLED utility program
  8680.                  dochbld             Help library build utility
  8681.                  dochelp             On-line help program
  8682.                  docget              DOCZ source file parameter
  8683.                                      retrieval
  8684.                  doclog              DOCZ log examination utility
  8685.                  doclis              Source file scanning utility
  8686.                  docman              DOCZ on-line User Manual
  8687.                  doclearn            DOCZ on-line tutorial
  8688.                  calcdate            Date calculation utility
  8689.                  fills               Space/tab file test utility
  8690.                  retab               Convert spaces to tabs utility
  8691.                  detab               Convert tabs to spaces utility
  8692.                  docz_sym            defines DOCZ environment symbols
  8693.                  BANNER.DAT          font file for banners printed on
  8694.                                      the documentation
  8695.                  PCODE.DAT           printer database for PCODE
  8696.                  PSET.DAT            printer database produced by PCODE
  8697.                                      and maintained by the PSET utility
  8698.                  $DOCREF/DOCXL.DAT   the Documentation Index produced by
  8699.                                      the DOCXL program
  8700.                  $DOCREF/DOCZ.CFG    the optional DOCZ Configuration
  8701.                                      File
  8702.                  $DOCREF/DOCHELP.HLP On-line help file for DOCHELP
  8703.                  $DOCSRC/bldocz      builds the sample library
  8704.  
  8705.             If installation of the examples is selected during the
  8706.             installation procedure, the examples are copied to the
  8707.             DOCSRC directory.
  8708.  
  8709.  
  8710.  
  8711.  
  8712.  
  8713.  
  8714.  
  8715.  
  8716.  
  8717.  
  8718.  
  8719.  
  8720.  
  8721.  
  8722.  
  8723.  
  8724.  
  8725.  
  8726.  
  8727.  
  8728.                                          153
  8729.  
  8730.  
  8731.                                         INDEX
  8732.  
  8733.  
  8734.  
  8735.  
  8736.             $STATUS, 21
  8737.  
  8738.             .APPLICATION parameter, 30
  8739.             .ARGUMENTS parameter, 30
  8740.             .AUTHOR parameter, 30
  8741.             .CAUTION parameter, 31
  8742.             .COMMENTS parameter, 31
  8743.             .CONVENTIONS parameter, 33
  8744.             .DESCRIPTION parameter, 29
  8745.             .DIAGRAM parameter, 33
  8746.             .ENDOC parameter, 27, 33
  8747.             .ERRORS parameter, 33
  8748.             .FIXES parameter, 27, 31
  8749.             .INCLUDES parameter, 33
  8750.             .LANGUAGE parameter, 32, 33
  8751.             .LIBRARY parameter, 27, 29
  8752.             .LSE parameter, 32
  8753.             .MODULE parameter, 27, 29
  8754.             .NARRATIVE parameter, 30
  8755.             .NOTICE parameter, 32
  8756.             .OVERHEAD parameter, 31
  8757.             .REFERENCES parameter, 32
  8758.             .RETURNS parameter, 32
  8759.             .REVISION parameter, 27, 31
  8760.             .SEE_ALSO parameter, 32
  8761.             .SYSTEM parameter, 30
  8762.             .TYPE parameter, 29
  8763.  
  8764.             alternate directories, 57
  8765.             ambiguous file names, 19
  8766.             ASCII transport files, 21, 73, 77, 95
  8767.  
  8768.             batch files, 20
  8769.             building documentation libraries, 37
  8770.  
  8771.             CALCDATE, 99
  8772.             case, 21, 25, 29, 30, 38, 50, 54, 56, 85, 115, 154
  8773.             case, as applied in file names, 20
  8774.             case, as applied in names, 25, 27, 134
  8775.             case, in date specifications, 24
  8776.             CLI symbols, 147
  8777.             CMS, 12, 37, 74, 116, 117, 123, 127, 134, 150, 151
  8778.             command files, 20
  8779.             Command-line options, 60
  8780.             comment string mask, 27, 53, 54
  8781.             Configuration File, 26, 49, 52, 53, 55, 57, 74, 98, 111,
  8782.             144, 147, 151, 155
  8783.             control keys, 23
  8784.             cross-platform development, 12, 118, 136, 144
  8785.             cross-platform file specification translation, 118
  8786.  
  8787.             data directory, 37, 50, 98, 109, 150, 153
  8788.  
  8789.  
  8790.                                          155
  8791.  
  8792.  
  8793.                                         INDEX
  8794.  
  8795.  
  8796.             date format, 23, 43, 99, 108, 109
  8797.             dates, change notice, 45
  8798.             dates, current format, 99
  8799.             dates, default format, 23, 99
  8800.             dates, fix notice, 43
  8801.             dates, introduction, 63
  8802.             dates, modification, 63
  8803.             dates, revision notice, 43
  8804.             default source directory, 15, 37, 38, 146, 150, 153
  8805.             defaults, overriding, 57
  8806.             DETAB, 103
  8807.             DOCDAT, 15, 37, 94, 150
  8808.             DOCGET, 85
  8809.             DOCHBLD, 77
  8810.             DOCHELP, 79
  8811.             DOCLEARN, 91
  8812.             DOCLIS, 86
  8813.             DOCLOG, 88
  8814.             DOCMAN, 90
  8815.             DOCREF, 146, 150, 154
  8816.             DOCSRC, 38, 116, 117, 134, 146, 150, 154
  8817.             documentation data directory, 15
  8818.             documentation header, 26, 28, 37, 41, 43
  8819.             Documentation Index File, 26, 37, 118
  8820.             documentation reference directory, 15, 42, 77, 107, 150, 153
  8821.             documentation size, 134
  8822.             DOCXLED, 81
  8823.             DOCZ concepts, 11
  8824.  
  8825.             enabling extended features, 144
  8826.             Enter and Press, differences, 23
  8827.             error level, 55
  8828.             error levels, severity, 55
  8829.             ERRORLEVEL, 21
  8830.             example files, 145
  8831.  
  8832.             File formats, 21
  8833.             file name, maximum length, 25
  8834.             file specifications, default, 117
  8835.             FILLS, 102
  8836.             formatting source code, 27
  8837.  
  8838.             help, libraries, 120
  8839.             help, on-line, 120
  8840.  
  8841.             installation, MSDOS, 146
  8842.             installation, UNIX, 153
  8843.             installation, VMS, 149
  8844.  
  8845.             library introduction, 41, 42, 45
  8846.             library name, maximum length, 25
  8847.             library names, maximum number of, 26
  8848.             library summary, 45
  8849.             logging, 55, 89, 124
  8850.  
  8851.  
  8852.                                          156
  8853.  
  8854.  
  8855.                                         INDEX
  8856.  
  8857.  
  8858.             logging, error, 55
  8859.             logging, transaction, 55
  8860.             logical names, 150
  8861.  
  8862.             module deletion, 64
  8863.             module name, maximum length, 25
  8864.             multiple language support, 53
  8865.  
  8866.             naming conflicts, module names, 39
  8867.             number of modules, maximum, 147, 151
  8868.  
  8869.             parameter, 26, 27, 28, 41, 43, 54, 106, 111, 114, 123, 146
  8870.             parameter usage, 29
  8871.             parameters, 113
  8872.             parameters, multiple, 29
  8873.             parameters, optional, 29
  8874.             parameters, required, 29
  8875.             parameters, single, 29
  8876.             PCODE, 97
  8877.             portability, 136
  8878.             printer features, installing, 94, 97
  8879.             printers, use by DOCZ System, 42
  8880.             program directory, 15
  8881.             PSET, 93
  8882.  
  8883.             Record format, Documentation Index File, 133
  8884.             REFORMAT, 100
  8885.             RETAB, 104
  8886.             return values, from programs, 21
  8887.  
  8888.             SCCS, 12, 124, 127, 134
  8889.             Shell, 86
  8890.             shell scripts, 20
  8891.             single module documentation, 47
  8892.             sort programs, requirements, 76
  8893.             Standard error, 134
  8894.             summary, application keyword, 41, 45
  8895.             summary, description permutations, 41, 45
  8896.             summary, module description, 41, 45
  8897.             summary, operating system platform, 41, 45
  8898.             summary, quick description, 41, 45
  8899.             support files, 145
  8900.             switch character, 19
  8901.             symbol substitution, 38, 118
  8902.  
  8903.             tab character expansion, 27, 53, 54, 100, 102, 103, 104
  8904.             text data file, 21
  8905.             title page, 45
  8906.  
  8907.             UNIX, 153
  8908.             username, emulating in MSDOS, 59
  8909.             utilizing printer features, 49
  8910.  
  8911.             version control, 12, 37, 49, 57, 86, 115, 121, 124, 144
  8912.  
  8913.  
  8914.                                          157
  8915.  
  8916.  
  8917.                                         INDEX
  8918.  
  8919.  
  8920.             version control, command file automation, 127
  8921.             version control, custom interface, 134
  8922.             version numbers, 21
  8923.             VMS, 149
  8924.  
  8925.             wildcard, 19, 38, 79, 86
  8926.             working directory, 15, 77, 94, 149
  8927.  
  8928.  
  8929.  
  8930.  
  8931.  
  8932.  
  8933.  
  8934.  
  8935.  
  8936.  
  8937.  
  8938.  
  8939.  
  8940.  
  8941.  
  8942.  
  8943.  
  8944.  
  8945.  
  8946.  
  8947.  
  8948.  
  8949.  
  8950.  
  8951.  
  8952.  
  8953.  
  8954.  
  8955.  
  8956.  
  8957.  
  8958.  
  8959.  
  8960.  
  8961.  
  8962.  
  8963.  
  8964.  
  8965.  
  8966.  
  8967.  
  8968.  
  8969.  
  8970.  
  8971.  
  8972.  
  8973.  
  8974.  
  8975.  
  8976.                                          158
  8977.